델파이 96

FireMonkey Delphi component 설치하기

1. Component 패키지 파일(*.bpl) 과 소스파일들을 원하는 폴더에 복사한다    - 패키지 파일을 원하는 위치에 복사한다 (예: D:\Workspace) 2. Component 설치2-1) 메뉴에서 'Install Packages...' 선택2-2) 'Add'를 선택하여, 복사한 패키지 파일을 선택한 후 'OK'를 선택한다.2-3) Tools > Options... 메뉴을 선택한 후 Language > Delphi > Library 를 선택 한 후 'Library Path' 에 있는 버튼을 선택한다.2-4) 소스가 있는 폴더를 선택한 후 'Add' 버튼을 이용해 소스폴더를 추가 한 후 'OK'버튼을 선택한다. 3. RAD Studio 를 재 실행 시킨다.

Delphi Thread 정리

Delphi 에서 사용되는 Thread 를 정리한다. 본 문서에서 사용하는 코드는 Delphi Alexandria 버전의 FMX 환경에서 제작되었다. Delphi Thread 의 구성은 아래와 같다. TThread Synchronize Queue CreateAnonymousThread TTask TParell TMonitor Thread 는 멀티스레딩을 구현하는 기능이며, 여러작업을 동시에 처리하거나 비동기 처리를 할 수 있게 해 준다. > 백그라운드 작업 (TTask, TThread.CreateAnonymousThread) > 병렬처리 (TTask, TParallel.For) > 동기화 (TThread.Synchronize, TThread.Queue) Thread를 사용할 때 주의할 점은 사용자 인터페..

델파이 2023.08.01

Delphi iOS 제작 시 Datasnap.DSConnect 문제 발생 및 해결

Delphi Alexandria 에서 Debug 환경에서 iOS Device 64 bit 개발을 하는 중에 TDSProviderConnection 을 사용하려 하면, Datasnap.DSConnect 문제가 아래와 같이 발생한다. 이를 해결하기 위해서는 Datasnap.DSConnect.pas 파일을 재 컴파일 해야 하는데, 개발툴에서 막고 있으므로, C:\Program Files (x86)\Embarcadero\Studio\22.0\source\data\datasnap 폴더안에 있는 Datasnap.DSConnect.pas 파일을 복사해서, 프로젝트 소스 폴더에 붙여 넣으면 된다. 프로젝트 컴파일 할 때, 최우선 선택 폴더가 프로젝트 소스 폴더 이기 때문에, 프로젝트 소스폴더에 있는 Datasnap.D..

델파이 2023.08.01

델파이 자주 쓰는 단축키

ctrl + / : 줄을 주석 처리 ctrl + J : 코드 템플릿 선택 팝업 표시 ctrl + space : 코드 완성 ctrl + enter : 커서 위치에 해당되는 파일 열기 ctrl + shift + space : 프로시저의 파라미터를 표시 ctrl + shift + A :. 유닛 추가 ctrl + shift + C : 클래스 완성 ctrl + shift + I : 블록 들여쓰기 (Tab 도 같은 기능) ctrl + shift + U : 블록 내어쓰기 (shift + Tab 도 같은 기능) ctrl + shift + H : 힌트표시 ctrl + shift + T : Todo 항목 추가 ctrl + shift + V : 변수 선언 리펙토링 ctrl + shift + A : 유닛을 uses 에 추가 ..

스크롤박스안에 있는 메모를 선택해서 마우스 움직였을 때 스크롤 되게 하는 법

FMouseDown: Boolean; // Mouse 가 눌렸는지 확인 FMouseDown_Y: Single; // Mouse Down 되었을 때의 Y 의 값 procedure TfrmMain.Memo1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single); begin FMouseDown := True; FMouseDown_Y := Y; end; procedure TfrmMain.Memo1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Single); begin if FMouseDow..

델파이 날짜관련 작성 함수

델파이(Delphi)로 작성한 날짜(Date) 관련 함수들입니다.// 요일 이름 구하기function dateDayOfWeekStr(D: TDateTime): String;const DayNames: array[1..7] of string = ('월', '화', '수', '목', '금', '토', '일');begin result := DayNames[System.DateUtils.DayOfTheWeek(D)];end;// 긴 요일 이름 구하기function dateDayOfWeekStrLong(D: TDateTime): String;begin Result := dateDayOfWeekStr(D)+'요일';end;// 주어진 일자가 포함된 분기의 시작일function dateBeginOfQuarter..