본문 바로가기
반응형

분류 전체보기778

스레드로부터 안전한 방식으로 Windows Forms 컨트롤 호출 스레드로부터 안전한 방식으로 Windows Forms 컨트롤 호출 프로그램이 조금 복잡해 지면 스레드를 사용하게 된다. WinForm 으로 멀티 스레드를 사용하다가 스레드가 컨트롤에 접근 하려 하면 예외가 발생한다. (역시 C# 컴파일러는 냉정하다...) 예외 : InvalidOperationException 설명 : "control name 컨트롤이 자신이 만들어진 스레드가 아닌 스레드에서 액세스되었습니다." 이 예외는 디버깅 할 때 발생하며, Run-time 때는 발생하지 않는다. (프로그램을 강제 종료 시키지도 않더라.) CheckForIllegalCrossThreadCalls 프로퍼티 값을 false 로 설정하면 위 예외를 발생시키지 않게 할 수 있지만 안정적인 프로그램 작성을 위해 위 예외 처리.. 2012. 1. 10.
[Form] WinForm 시작과 종료 이벤트 WinForm 시작과 종료 이벤트 Form 및 Control 클래스는 응용 프로그램 시작및 종료와 관련된 이벤트 집합을 노출합니다. Form의 시작 Windows Forms 응용프로그램을 시작할 때 기본 폼의 시작 이벤트가 다음 순서로 발생 합니다. ● Form.Load - Form이 로드되어 메모리에 올라올 때, 화면에 표시되기 직전에 발생 - 프로퍼티를 변경한다거나, 리소스를 할당하는 등 Form의 동작에 필요한 초기화 수행 - Form의 생애 동안 딱 한 번만 발생하므로 일회적인 초기화에 적합 - Form.Load 이벤트 보다 Form 클래스의 생성자가 먼저 호출 된다. Form의 종료 응용 프로그램이 닫히면 기본 폼의 종료 이벤트가 다음 순서로 발생 합니다. ● Form.Closing - Form.. 2012. 1. 10.
[C#] [Chart] MS Chart MS Visual Studio에서 제공하는 Chart component 이다. Dundas chart의 이전 버전을 Microsoft에서 라이센스하여 제공한다고 하며, 무료로 사용 가능하다. 1. 사전 필요사항 - MS Visual Studio 2008 SP1 (Visual Studio 2008 C# Express, Webdeveloper 2008 에서도 사용 가능) Microsoft .NET Framework 3.5 SP1 2. 설치 파일 MSChart.exe MSChart_VisualStudioAddOn.exe DataVisChartControl.zip DataVisChartControl.z01 WebSamples.zip WinSamples.zip WinSamples.z01 WinSamples.z02.. 2012. 1. 10.
WPF 3D 소개 WPF 3D 소개 3D 그래픽 기초 3D 그래픽의 개념은 사물에 대한 세 개의 관점 즉 3차원을 가진다는 것이다. 우리의 화면이 단 2개의 차원만을 가지고 있기 때문에 우리는 사물의 단면을 가지는 camara를 정의해야 한다. 아래의 사진은 사물을 평면에 투사한 것이다. 이 투사도는 3D 엔진에 의해 비트맵으로 렌더링된 것이다. 이 엔진은 3차원의 공간에 존재하는 모든 빛에 의해 계산된 모든 픽셀의 색을 결정한다. 사물의 모든 면은 물질(Material) 과 Brush를 가진다. 물질은 특정 각도에서 얼마만큼의 빛을 반사할 것인지 그리고 Brush는 색을 결정한다. Brush는 단색일 수도 또는 Gradient일수도 혹은 Texture라고 불리는 Image일 수도 있다. 삼각형의 세계 3D 그래픽의 세계.. 2012. 1. 10.
[유니코드] 한글 라이브러리 오토마타. 얼마전 string pad 한글 지원을 위해 찾아본 오토마타. 알고리즘과 같은 어떤 개념 같았는데 영 공부하기가 귀찮아서 아래 유니코드 한글 코드표를 보고 알고리즘을 만들어 버렸다. LibHangul 이라는 오픈 소스도 찾았으나 사용법을 배우기 귀찮아서 역시 그냥 만들어 버렸다. 혹, 만들기가 더 귀찮거나 남이 만든거 공부해서 사용하는게 편한 사람은 받아가셔요~ 그리고 역시 내가 나중에 쓸 수도 있기에 백업삼아 올려놓는다 ㅋㅋ 수고요~ - 유니코드 자모값의 코드표 : http://www.unicode.org/charts/PDF/U1100.pdf - 유니코드 완성형 한글 코드표 : http://www.unicode.org/charts/PDF/UAC00.pdf 2012. 1. 10.
[Form] 타이틀바 잡지않고 폼이동 public partial class Form1 : Form { [DllImportAttribute("user32.dll")] public static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam); [DllImportAttribute("user32.dll")] public static extern bool ReleaseCapture(); public Form1() { InitializeComponent(); } private void Form1_MouseDown(object sender, MouseEventArgs e) { if(e.Button == MouseButtons.Left) { ReleaseCapture(); Send.. 2012. 1. 9.
반응형