Computer/C#
์ปดํ์ผํ์๊ณผ ๋ฐํ์ ๊ทธ๋ฆฌ๊ณ ์์
C#์ ์ปดํ์ผํ์ ์์์ ๋ฐํ์์์ ๋ ์ ํ์ ์์๋ฅผ ์์ต๋๋ค. ์ปดํ์ผํ์๊ณผ ๋ฐํ์์ ์๋ก ๋ค๋ฅด๊ฒ ๋์ํ๊ธฐ ๋๋ฌธ์ ์ ์ ํ์ง ์์ ์์ ํ์
์ ์ฌ์ฉํ๋ฉด ์์ํ๋ ๋๊ฐ๊ฐ ๋ฐ๋ฆ
๋๋ค. (ํ๊ฑฑ!) ์ปดํ์ผํ์ ์์๋ณด๋ค๋ ๋ฐํ์ ์์๋ฅผ ์ฌ์ฉํ๋ผ. ์ปดํ์ผํ์ ์์๊ฐ ์ฝ๊ฐ ๋ ๋น ๋ฅด๊ธด ํ์ง๋ง ๋ฐํ์ ์์์ ๋นํด ์ ์ฐ์ฑ์ด ์๋นํ ๋จ์ด์ง๋ค. ์ปดํ์ผํ์ ์์๋ ์ฑ๋ฅ์ด ๋งค์ฐ ์ค์ํ๊ณ ์์์ ๊ฐ์ด ์ ๋๋ก ๋ฐ๋์ง ์๋ ๊ฒฝ์ฐ์๋ง ์ ํ์ ์ผ๋ก ์ฌ์ฉํ๋ ๊ฒ์ด ์ข๋ค. ๋ฐํ์ ์์๋ readonly ํค์๋๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ธํ๊ณ , ์ปดํ์ผํ์ ์์๋ const ํค์๋๋ฅผ ์ฌ์ฉํ๋ค. ๊ทธ๋ผ? ๋ฐํ์(Runtime)๊ณผ ์ปดํ์ผํ์(Compiletime) ์๋ก ๋ค๋ฅธ ๋ ๊ณ์ธต์ ์ฐจ์ด๋? ๋ฐํ์(Runtime)๊ณผ ์ปดํ์ผํ์(Compiletime)์ ์ํํธ์จ์ด ํ..
Computer/C#
DateTime
์ผ์ ๊ด๋ฆฌ๋ก ์์ฃผ ์ฌ์ฉํ๋๋ฐ, ์กฐ๊ธ์ฉ ํท๊ฐ๋ฆฌ๋ ๋ถ๋ถ์ด ์์ด์ ์ ๋ฆฌํด๋ . ๋ ๋ ๋ ๋ ๋ ๋ ๋ .! ๊ทธ๋ผ ์์! [System.Serializable] public struct DateTime : IComparable, IComparable, IConvertible, IEquatable, IFormattable, System.Runtime.Serialization.ISerializable DateTime ๊ฐ ํ์์ 00:00:00 (์์ ), 01 ๋
1 ์ 1 ์ผ Anno ๊ธฐ (๊ณตํต ์ฐ๋)๋ถํฐ 11:59:59 P.M., 9999 ๋
12 ์ 31 ์ผ ๊น์ง์ ๊ฐ์ ํฌํจ ํ๋ ๋ ์ง ๋ฐ ์๊ฐ์ ๋ํ๋
๋๋ค. DateTime.Now// {2020-04-23 ์ค์ 10:26:28} DateTime.Today// {2020-0..
Computer/C#
[C#] ์ ๋ ฅ ๋ค์ด์ผ๋ก๊ทธ ํ๋์ฝ๋ฉ ์ฝ๋
ํ๋ก๊ทธ๋๋ฐ์ ํ๋ค ๋ณด๋ฉด, ํจ์ค์๋๋ฅผ ํ์ธํ๊ฑฐ๋, ๋จ์ํ๊ฒ ๊ฐ์ ์
๋ ฅ๋ฐ์ ์ผ์ด ๋ง๋ค. ๋งค๋ฒ ํผ ๋๋ ์ฌ์ฉ์ ์ปจํธ๋กค ๋ง๋ค์ด์ ์ฌ์ฉํ๊ธฐ๋ ๊ท์ฐฎ๊ณ , ๋ฑ! ๋ฃ์ผ๋ฉด ๋ฑ! ์ถ๊ฐ๋๋ ์์ค ํ๋ ์์ผ๋ฉด ์ข์์~ ์๋ ์์ค๋ฅผ ๋ค์์คํ์ด์ค ์์ผ๋ก ์ถ๊ฐํ๋ฉด ๊ธฐ๋ณธ์ ์ธ ์ฌ์ฉ ์ค๋น๊ฐ ๋๋๋ค. // ---------------------------- // ํจ์ค์๋ ๋๋ ๊ฐ ์
๋ ฅ๋ฐ๊ธฐ ํด // ---------------------------- public static class Prompt { public static string ShowDialog(string text, string caption) { Form prompt = new Form() { Width = 260, Height = 170, FormBorderStyle = F..
Computer/C#
๋ง์ฐ์ค ์ขํ ๊ฐ์ ธ์ค๊ธฐ
์คํฌ๋ฆฐ ๊ธฐ์ค ๋ง์ฐ์ค ์ขํ int X; int Y; // X ๋ณ์์ ๋ง์ฐ์ค X ์ขํ (์คํฌ๋ฆฐ ๊ธฐ์ค) ๋์
X = Control.MousePosition.X; // Y๋ณ์์ ๋ง์ฐ์ค Y ์ขํ (์คํฌ๋ฆฐ ๊ธฐ์ค) ๋์
Y = Control.MousePosition.Y; ํน์ ์ปจํธ๋กค ๊ธฐ์ค, ๋ง์ฐ์ค ์ขํ // ์ปจํธ๋กค ๊ธฐ์ค์ผ๋ก ๋ง์ฐ์ค ์ขํ๋ฅผ ๋ฐํ PointToClient(new Point(Control.MousePosition.X, Control.MousePosition.Y));
Computer/C#
[C#] serialPort, Delay
serialPort ๋ฆฌํด๊ฐ ํ
์คํธ ์ค ๊ฐ์ ๋ณด๋ด๊ณ ์๋ ํ
์คํธ๋ฐ์ค์ ํ์ํ๋ ์ค ๋ฐ๋ก ๋ํ๋์ง ์๋ ๋ฌธ์ ์ ์ด ์์ด์ ๋๋ ์ด๊ฐ ํ์ํ๋ค. ๋๋ต 10ms ์กฐ๊ธ ๋ถ์กฑํ๊ณ 20ms ์ ๋ ๋๋ ์ด๋ฅผ ์ฃผ๋ฉด ์ ๋๋๊ฒ ๊ฐ์ ๋ณด์๋ค. serialPort.Write ๋ก ๋ณด๋ด์ฃผ๊ณ ๋๋ ์ด! private static DateTime Delay(int MS) { DateTime ThisMoment = DateTime.Now; TimeSpan duration = new TimeSpan(0, 0, 0, 0, MS); DateTime AfterWards = ThisMoment.Add(duration); while(AfterWards >= ThisMoment) { System.Windows.Forms.Application.DoEven..