반응형 C & C++444 [Dialog] 윈도우 그리기 lock 하기 윈도우에 여러 가지를 그리는 경우, 윈도우가 깜빡 깜빡 거리는 경우가 많습니다. OnPaint 에서 더블 버퍼링으로 이 문제를 해결할 수도 있지만 CTreeCtrl 과 같은 경우에는 적용하기 쉽지 않죠. 그래서 윈도우 그리기 자체를 lock 시킨 후, 모든 그리기가 완료되었을 때에 이를 해제해 주는 것이 깔끔한 윈도우 작성을 위한 훌륭한 방법입니다. CWnd 클래스에 LockWindowUpdate 메소드와 UnlockWindowUpdate() 메소드가 위와 같은 기능을 위한 메소드입니다. BOOL LockWindowUpdate( ); - Disables drawing in the given window. void UnlockWindowUpdate(); - Call this member function t.. 2011. 12. 14. [Dialog] 캡션이나 아이콘을 깜박이게 하는 FlashWindow 1. 특성 윈도우의 캡션 바를 강조하거나 윈도우가 아이콘으로 표시되었을 때 아이콘을 깜박인다. 주로 윈도우에 사용자의 주의를 끌기 위해 사용된다. 2. 구문 FlashWindow(hwnd : HWND ; bInvert : Longbool) : boolean; hwnd -> 윈도우의 핸들. bInvert -> true 면 깜박이게 되고, false 면 원상태로 되돌아간다. 3. 예제 - flashWindow 함수의 구현 Timer 컴포넌트를 하나 배치하고 다음을 코딩해보자. procedure TForm1.Timer1Timer(Sender: TObject); begin flashwindow(Application.handle, true); end; procedure TForm1.FormClick(Sender:.. 2011. 12. 14. [Dialog] 자동 사이즈 다이얼로그 Introduction Yesterday when I wrote a simple Win32 dialog application, I missed one handy feature that is implemented in .NET forms; anchors and docking for controls. I took a look at the CodeProject, but I did not find exactly what I was looking for, so I wrote a simple solution for myself. I put it here with hope that it will be useful for some other programmers. This solution has two advantag.. 2011. 12. 14. 정수화 함수(더블형 정수화) 정수화 함수 정수화 함수는 실수형 데이터에서 정수부만을 취하는, 즉 소수점 이하의 소수부를 잘라 버리는 함수이다. 소수부를 잘라 버린다고 해서 계산 결과가 정수가 되는 것은 아니며 리턴값은 여전히 실수이다. 실수값의 소수부만을 0으로 만든다고 생각하면 된다. 정수화 함수에는 다음 두 가지가 있다. double floor( double x ); double ceil( double x ); 두 함수는 소수점 이하를 자르는 방식이 다른데 floor는 소수점 이하를 버리고 정수부만을 취하고 ceil은 소수점 이하를 올림해서 정수부를 1증가시킨다. 다음 호출 예를 보면 쉽게 이해가 될 것이다. floor(3.14); // 결과는 3.0 ceil(3.14) // 결과는 4.0 floor는 내림을 하는 함수이고 ce.. 2011. 12. 14. 파일 복사 삭제, 덮어쓰기 1. 파일 복사/덮어쓰기 2. 파일 삭제 3. 파일 이동 ========================================================================================= 1. 파일 복사/덮어쓰기 ::CopyFile("c:\\Source.txt", "c:\\Target.txt", FALSE); ->세번째 인자가 TRUE인 경우 target파일이 있는경우 복사되지 않지만 FALSE인 경우는 덮어쓴다. 2. 파일 삭제 ::DeleteFile("c:\\file.txt"); -> 삭제. 3. 파일 이동 ::MoveFile("c:\\Soursefile.txt", "c:\\Target.txt"); -> target파일이 이미 있는 경우 실행되지 않는다. 2011. 12. 13. 리스트(List) 색상 변경 - 리스트 ◈ 개발 환경 1. OS 환경 : WindowXP 2. 사용 언어 : VC++ 6.0 3. 개발에 필요한 환경 1) StdAfx.h 파일에 #include 을 등록합니다. 2) ColorListCtrlView.cpp 파일에서 CView로 된 것들을 CListView로 변경합니다. (ColorListCtrlView.h 파일에서 CView로 된 것들을 CListView로 변경) ◈ 프로그램 설명 1. 리스트컨트롤에 다섯개의 컬럼들이 있으며, 하나를 선택해도 한줄 모두 선택되도록 하였습니다. 2. 리스트컨트롤에 3~5번째 컬럼에 그라데이션 효과를 내어 색상을 주었습니다. 3. 1번째 열의 텍스트 색상은 빨간색, 2번째 열의 텍스트 색상은 녹색, 3번째 열부터는 파란색으로 설정했습니다. 4. 1~3번째 컬럼에는.. 2011. 12. 13. 이전 1 ··· 19 20 21 22 23 24 25 ··· 74 다음 반응형