델파이 퀀텀그리드 Excel출력하기
델파이 퀀텀그리드 Excel출력하기 1. uses 절에 다음을 추가 한다 cxGridExportLink , shellApi 2. 엑셀버튼 클릭시 SaveDialog1.FileName := '상품코드.xls'; if SaveDialog1.Execute then begin ExportGridToExcel(SaveDialog1.FileName, Grid_Master, true, true, false, 'xls'); Application.ProcessMessages; if MessageDlg(SaveDialog1.FileName + ' 파일을 실행하시겠습니까?', mtWarning, [mbYes, mbNo], 0) = mrYes then ShellExecute(self.Handle, PChar('OPEN'), ..
2021. 8. 31.
델파이 마우스 아래의 윈도우 핸들 구하기
델파이 마우스 아래의 윈도우 핸들 구하기 // 아래처럼 타이머를 사용하지 않고 마우스 후킹을 사용하면 좀더 간결한 프로그램을 만들 수 있습니다 // SetWindowsHookEx(WH_MOUSE,...) 를 찾아보세요 unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) Timer1: TTimer; Memo1: TMemo; procedure Button1Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); private..
2021. 8. 15.
델파이 마우스 위치의 컨트롤
델파이 마우스 위치의 컨트롤 // 마우스 포인터 위치의 콘트롤(콤포넌트)의 이름을 폼의 Caption에 // 출력하는 예로 아래의 Label1, Edit1, Memo1, Button1 등은 임의로 // 올려놓으시고 테스트 해보세요 // Panel 안에 있는 콘트롤도 구분할 수 있습니다 unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Label1: TLabel; Edit1: TEdit; Memo1: TMemo; Button1: TButton; private { Private declarations } proce..
2021. 8. 14.
델파이 WM_USER 메시지
델파이 WM_USER 메시지 윈도우 시스템은, 메시지구동 시스템이죠. 모든 이벤트는 메세지의 발생에 의해서 처리됩니다. 리스트박스 윈도우, 콤보박스윈도우등 모든 이런 각각의 윈도우들은 내부적 메시지처리에의해 원하는 동작을 하게 되는데, 이런 메시지외에 사용자 정의 메시지가 필요할때가 많죠. 예를들어, 콤보에 값이 변경될때, 부모에게 뿐 아니라, 다른곳에도 알려줄 필요가 있거나 할때요. 그러면, 메시지의 값을 아무렇게나 정의해서 사용할수 없죠. #define WM_MY_TEST 100 처럼, 이런식으로 선언한다면, 이미 100이라는 값은 시스템이 내부적으로 예약해서 사용하는 메시지 상수일 수가 있습니다. 그래서, 사용자가 사용해도 되는 구역을 만들어뒀는데 그게 0x400 값부터 , 0x7FFF 까지 입..
2021. 8. 10.