Cornelius Concepts, LLC가 제공하는 유용한 델파이 장치 및 구성 요소.
이 라이브러리에는 여러 상황에서 유용한 단위와 구성 요소가 포함되어 있습니다. 그러나 그들은 단지 유용한 것 이상을 넘어서도 가르칩니다. 주석과 샘플이 있으며, 구성 요소는 런타임과 디자인 시간 간의 패키지 분리, 구성 요소를 마우스 오른쪽 버튼으로 클릭하여 활성화하는 방법, 델파이 스플래시 화면 및 상자에 통합하는 방법을 통합하는 방법과 같은 델파이 구성 요소를 작성하는 방법에 대한 몇 가지 측면을 보여줍니다.
이 구성 요소를 양식에 삭제하면 크기와 위치가 닫히면 자동으로 저장되어 열 때 복원됩니다. 편리한 방법으로 다른 값을 저장하십시오. 두 가지 변형이 있습니다.
이 두 구성 요소에는 최소한의 설정으로 적절한 위치에 파일 또는 레지스트리 설정을 저장하고 양식 이름에 따라 키 또는 섹션을 작성하는 기본값이 있습니다. 따라서 이러한 구성 요소 중 하나를 각 양식에서 빠르고 쉽게 삭제할 수 있습니다.
정수, 문자열 및 부울 값을 저장/복원하기위한 추가 방법으로 간단한 사용자 데이터를 매우 쉽게 기억할 수 있습니다.
- procedure SaveStrValue(const Name:string;const Value:string);
- procedure SaveIntValue(const Name:string;const Value: Integer);
- procedure SaveBoolValue(const Name:string;const Value: Boolean);
- function RestoreStrValue(const Name:string; const Default: string = ''):string;
- function RestoreIntValue(const Name:string; const Default: Integer = 0): Integer;
- function RestoreBoolValue(const Name:string; const Default: Boolean = False): Boolean;
이 구성 요소에는 몇 년 전 DBISAM 뉴스 그룹에서 Neil이라는 사람이 작성한 루틴이 포함됩니다. 구성 요소로 바뀌면 일부 키보드 및 마우스 윈도우 고리에 연결되어 컴퓨터의 비 활동을 시청하고 카운트 다운 타이머가있는 메시지를 팝업하여 응용 프로그램을 닫습니다. 하나의 유스 케이스는 파일과 레코드를 열어 두는 2 계층 데이터베이스 응용 프로그램입니다.
이 구성 요소는 Delphi의 TSTOPWATCH 클래스 사용을 선호하여 Delphi 10.3 RIO 버전에서 제거되었습니다.
이것은 연산 타이밍의 세부 사항을 숨기는 매우 간단한 구성 요소입니다. 간단히 전화를 걸고, 물건을하고, 전화 스톱을 호출하면 다음과 같은 속성을 사용할 수 있습니다.
이 구성 요소는 시간 영역의 변경 사항 (모바일 장치에서 사용되는 경우)을 확인하거나 일광 절약 시간을 설명하지 않습니다. 상당히 짧은 작업 (1 시간 미만)을 위해 설계되었습니다.
다음 구성 요소는 Delphi XE를 통해서만 지원되었으며 새로운 패키지에서 제거되었습니다.
오래 전에, 나는 당신이 입력 할 때 일치하는 레코드를 나열하는 정말 멋진 증분 검색 구성 요소를 가진 Infopower Suit of Components를 사용했습니다. 이 구성 요소를 해당 아이디어에서 패턴했지만 사용자 정의 버튼 및 기타 여러 기능도 추가했습니다. 또한 추가적인 멋진 디스플레이 기능을 위해 Raize 컨트롤을 사용했으며 DBISAM 데이터베이스 구성 요소와 매우 밀접하게 묶었습니다. 당시 특정 프로젝트를위한 것이었지만 그 이후로 다른 프로젝트에서 IT와 변형을 사용했습니다.
복합 구성 요소를 구축하는 방법의 좋은 예이기 때문에 이것은 흥미로운 구성 요소 일 수 있습니다.
몇 년 전에 오래된 프로젝트를 지원하기 위해 작성된이를 통해 Delimiters와의 이름 = 값 쌍을 간단하게 병합 할 수 있습니다. tstringlist 사용에 찬성하여 더 이상 사용되지 않습니다.
텍스트 파일에 빠르고 쉽게 로깅을 제공합니다. 새로운 라이브러리와 로깅 방법이 선호되기 때문에 더 이상 사용되지 않습니다.
팝업 모달 창의 간단한 텍스트 파일 뷰어.
마지막으로, 독립형 단위에 대한 단어.
이 폴더에는 UDMCUSTOMWEBGENERATOR 및 UDMDBISAMWEBGENERATOR의 두 가지 장치가 포함되어 있습니다. 이들은 데이터 모듈이며 첫 번째는 웹 브로커 구성 요소 몇 개, TPAGE 기능 제작자 및 TDATASETTableProducer가있는 기본 클래스입니다. CMS (Content Management Systems)가 인기를 얻기 전에 몇 년 전에 작성되었으며 모든 웹 개발에 Delphi를 사용하려고했습니다. 대규모 프로젝트에서 가치가있는 것보다 더 많은 작업이있는 것으로 밝혀졌으며 현재에는 많은 훌륭한 웹 도구가 있으므로 더 이상 사용되지 않습니다. 그러나 이러한 루틴이 유용하다는 것을 알 수있는 가끔 작업이 여전히 있으므로 유지합니다.
이 클래스는 HTML 태그와 데이터베이스 사이의 링크를 구축하여 웹 브로커 유용성을 확장합니다. 내가이 방식으로 사용한 유일한 데이터베이스는 DBISAM이었습니다. 나는 몇 년 동안 DBISAM을 사용하지 않았으므로 여전히 컴파일되는지는 모르겠지만, 기본 클래스가 특정 요구에 대해 어떻게 내려갈 수 있는지 보여줍니다.
자세한 내용은 코드의 의견을 읽으십시오.
"기타"폴더에는 3 개의 장치가 포함되어 있습니다 (나중에 추가 될 수 있음) : USearchReclist , UXMLDates 및 Utestutils .
첫 번째는 UsearchReclist 에는 몇 가지 절차 유형 선언과 하나의 절차가 포함되어 있습니다 : GetSearchRecs.
TPathStatusProc = reference to procedure (const Path: string; var Stop: Boolean);
TFileFoundProc = reference to procedure (FileInfo: TSearchRec);
procedure GetSearchRecs(const Path, Pattern: string; const Recursive: Boolean; PathStatusProc: TPathStatusProc; FileFoundProc: TFileFoundProc);
GetSearchRecs는 패턴과 일치하는 파일을 찾고있는 디렉토리 트리를 가로 지르고 패턴과 일치하는 모든 파일에 대해 찾은 모든 경로에 대해 PathStatusProc을 호출합니다.
이전 로그 파일을 삭제하는 예제 호출은 다음과 같습니다.
GetSearchRecs(LogFolder, '*.log', False, nil,
procedure (FileInfo: TSearchRec)
begin
if FileInfo.TimeStamp < Now - 90 then
FileDelete(TPath.Combine(LogFolder, FileInfo.Name), True);
end);
두 번째 단위 인 UXMLDATES 는 XML 파일에서 발견 된 날짜로 쉽게 작업 할 수 있습니다. 일반적인 형식은 yyyy-mm-dd "t"hh : mm : ss이지만, 방법 인 converttodelphidatefromxml은 시간 부분없이 문자열을 취할 수 있습니다.
세 번째 단위 인 Utestutils 는 날짜, 시간, 숫자, 지불 유형 등과 같은 테스트 데이터를 생성 해야하는 몇 가지 프로젝트에서 사용되는 일부 기능을 제공합니다.