일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 파이어버드
- 예제
- 데이터베이스
- 입문
- MySQL
- MFC
- 설치
- Visual Basic
- 파라미터
- 델파이
- SDK
- winsock
- dll
- 시리얼 통신
- PostgreSQL
- Visual Studio 2005
- 초보
- VB.NET
- c#
- 인스톨
- Delphi
- 소니
- WIN32 SDK
- 기초
- xml
- SQL
- 문자열
- Firebird
- 셋업
- vb
- Today
- Total
목록델파이 (82)
프로그래밍 노트
이거 설치한다고 3일 걸렸다. T.T 너무 짜증이 나서 적어둔다. 나중에 또 잊어버리고 버벅거릴까봐서. 1) 먼저 2010용 ZEOS를 다운로드 받는다. http://sourceforge.net/projects/zeoslib/files/Zeos%20Database%20Objects/ 위 사이트에서 zeosdbo-7.0.0-alpha를 다운받는다. 2010에서 ZEOS를 쓰려면 알파버전이지만 이것을 쓰는 방법밖에는 없는 것같다. 2) 압축을 풀고 압축을 푼 데이터를 아래 폴더에 복사한다. C:\Program Files\Embarcadero\RAD Studio\7.0\lib\ZeosLib (당연한 이야기지만 위 폴더는 사용자 마다 틀릴 수 있다.) 3) packages 폴더의 delphi14에 들어가 Zeo..
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ShellApi, Menus; const WM_NOTIFYICON = WM_USER + 333; type TForm1 = class(TForm) PopMenu: TPopupMenu; Show1: TMenuItem; EXit1: TMenuItem; procedure EXit1Click(Sender: TObject); procedure Show1Click(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedu..
DBGrid의 자료를 다시 표시할 때 코딩을 잘못하면 DBGrid가 깜박거리는 현상이 발생한다. TDBGrid에 연결된 DataSource의 연결된 DataSet에 SQL이 바뀔 때 아래와 같이 하면 문제가 해결되었다. ZQuery1.DisableControls; ZQuery1.close; ZQuery1.SQL.Text := edit1.Text; ZQuery1.Open; ZQuery1.EnableControls; 개발환경 Delphi2006 ZeosLib 6.6.6
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Contnrs; type // ObjectList에 추가할 Object TMyObj = class(TObject) private FiState : integer; FsId : string; FiTemp : integer; public function Cal(iTemp: integer): integer; published property State : integer read FiState write FiState; property ID : string read FsId write FsId; e..
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button3: TButton; Edit1: TEdit; procedure Button3Click(Sender: TObject); private { Private declarations } public { Public declarations } procedure WMRecvData(var Msg: TWMCopyData); message WM_USER + 100; end; var Form1: TForm1; implementation {$R *.d..
델파이에서 외부 OCX를 사용하는 방법을 몰라 이틀 동안 해맸다. 델파이에서 외부 OCX를 사용하려면 OCX를 등록해야된다. (지금 생각하면 당연한 것인데 왜 몇일 전에는 그리도 해맨걸까?) 그런데 등록하는 법이 내가 생각한 것이랑 조금 틀렸다. Component > Import Componenet ... Import Component만 하면 되는줄 알았는데 Import Component하면 정상적으로 외부 OCX가 등록되지 않는 것 같다. 외부 OCX를 등록하려면 Package 프로젝트를 만들고 그 프로젝트에서 Import Component를 한 후 Package 프로젝트에서 오른쪽 클릭을 하고 Install을 하면 외부 OCX가 Tool Palette에 등록된다. 자세한 내용은 아래 링크 참조 htt..
IntToBool, BoolToInt함수가 필요해서 인터넷을 찾아보니 나름 깔끔한 소스가 있었다. function BoolToInt(const Value: Boolean): Integer; begin Result := Ord(Value); end; function IntToBool(const Value: Integer): Boolean; begin Result := Value 0; end; * BOOL in Delphi Boolean in Delphi original Type LongBool compiler magic size in bytes 4 1 false 0 0 true -1 ($FFFFFFFF) 1 Bool하고 Boolean하고 값이 정수로 변형할 때 값이 틀려진다.
델파이에서 XML에 CRLF를 쓰고 읽으려고 하면 CRLF를 써도 읽어지는 것은 LF만 읽어진다. 인터넷에서 열심히 뒤져 봐도 뾰족한 대안을 못찾았다. 그래서 생각해낸 방법은 LF만 있을 경우 LF를 모두 CRLF로 바꾸면 된다. 먼저 LF만 있는지 확인하는 방법 function CheckOnlyLF(sSrc: string): boolean; var iCrLf, iLf : integer; begin result := false; iCrLf := Pos(#13 + #10, sSrc); iLf := Pos(#10, sSrc); if (iCrLf = 0) and (iLf > 0) then result := true; end; 이 소스는 LF를 하나만 검색하면 그냥 나와버린다. 그리고 LF를 모두 CRLF로 변..
델파이에서 16진수 문자열을 2진수 문자열로 바꾸기 function HexToBin(sHex: string): string; var iHex, iDigit : integer; begin iDigit := Length(sHex) * 4; iHex := StrToInt('$' + sHex); result := StringOfChar('0', iDigit); while iHex > 0 do begin if (iHex and 1) = 1 then result[iDigit] := '1'; dec(iDigit) ; iHex := iHex shr 1; end; end;
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; Type // 이벤트 핸들러 생성 TMy1stEvent = procedure(PrvValue, CurValue: integer) of object; // 값 변경 감시 클래스 정의 [사용자 이벤트 정의] TWatchChangeValue = class private FOnChangeVal : TMy1stEvent; public procedure ChangeValue(PrvValue, CurValue: integer); published property OnChangeValue : TMy1stE..