본문 바로가기

프로그램 개발/델파이

델파이(delphy) system unit - D함수

728x90
반응형


델파이(delphy) system unit - D함수 

------------------------------------------------
Date system Unit

문법 : fun;

시스템의 시계를 참조하여 오늘 날짜를 구한다. 날짜는
TDateTime형이므로 곧바로 문자열로 출력할 수 없으며
DateToStr 함수를 사용하여 문자열로 바꾸어 주어야 한다.

Label1.Caption:=DateToStr(Date) 명령에 의해 Label1에 오늘 날
짜가 출력된다.

------------------------------------------------
DateTimeToFileDate SysUtils Unit

문법 : function DateTimeToFileDate(DateTime: TDateTime):
Longint;

TDateTime형의 날짜, 시간 값을 DOS 형식의 날짜, 시간 형식
으로 바꾼다. 도스 형식의 날짜는 4바이트의 정수형이며 각
비트에 날짜, 시간 요소를 포함하고 있다. 다음 예는 도스 형
식의 날짜, 시간 형식을 레이블로 출력한다.

label1.caption:=IntToStr(DateTimeToFileDate(Now));

------------------------------------------------
DateTimeToStr system Unit

문법 : function DateTimeToStr(DateTime: TDateTime):
String;

날짜와 시간을 담은 TDateTime형의 변수를 문자열로 바꾼다.

만약 DateTime 인수가 날짜를 포함하지 않으면 날짜는
00/00/00이 되며 시간을 포함하지 않으면 00:00:00 AM이 된
다. 다음 예는 현재 시간과 날짜를 레이블로 출력한다.

Label1.Caption := DateTimeToStr(Now);

------------------------------------------------
DateTimeToString system Unit

문법 : procedure DateTimeToString(var Result: string; const
Format: string; DateTime: TDateTime);

날짜, 시간을 담고 있는 DateTime을 Format에 주어진 형식대
로 문자열로 변환하여 Result 문자열에 기입한다. Format 인수
에 사용할 수 있는 지정자에 관한 사항은 FormatDateTime 함
수를 참조하기 바란다.

------------------------------------------------
DateToStr system Unit

문법 : function DateToStr(Date: TDateTime): String;
날짜를 담는 TDateTime형의 변수에서 날짜를 문자열로 바꾼
다. 다음 예는 오늘 날짜를 레이블로 출력한다.

Label1.Caption := DateToStr(Date);

------------------------------------------------
DayOfWeek system Unit

문법 : function DayOfWeek(Date: TDateTime): Integer;

특정 날짜의 요일을 계산한다. 리턴되는 값은 1~7까지의 정
수이며 1이 일요일, 7이 토요일이다. 리턴되는 값이 정수형이
므로 월, 화, 수, 목 등의 실제 요일 이름으로 바꾸어 주어야
한다. 다음 예는 요일 이름을 레이블로 출력한다. 다음 예는
오늘이 무슨 요일인지 조사해서 요일 이름을 레이블로 출력
해준다.

예제)
var
 YO:string;
 ONUL:TDateTime;
begin
 ONUL:=Now;
 case DayOfWeek(ONUL) of
 1:YO:='일';
 2:YO:='월';
 3:YO:='화';
 4:YO:='수';
 5:YO:='목';
 6:YO:='금';
 7:YO:='토';
 end;
 label1.caption:='오늘은 '+YO+'요일입니다.';
end;

------------------------------------------------
Dec system Unit

문법 : procedure Dec(var X[; N:Longint]);

변수의 값을 1 감소시킨다. Dec(X)는 X:=X-1과 동일한 동작
을 한다. 두 번째 인수를 사용하면 1 이상의 값을 감소시킬 수
도 있다. Dec(X,5)는 X:=X-5와 동일한 동작을 한다. 첫 번째 인
수는 서수형의 변수이며 확장 문법이 적용될 경우 PChar형도
가능하다. N은 정수형의 상수 또는 변수여야 한다. Dec 함수
는 가장 최적화된 코드를 생성해 내므로 루프 내부에서 제어
변수값을 감소시키는 용도로 사용하기에 적합하다.

------------------------------------------------
DecodeDate system Unit

문법 : procedure DecodeDate(Date: TDateTime; var Year,
Month, Day: Word);

날짜를 담는 TDateTime형의 변수에서 년, 월, 일의 값을 분리
시킨다. 분리된 값들은 각각 Year, Month, Day 등의 정수형 변
수에 대입된다. 날짜값은 DateToStr 함수로, 문자열로 바꾼 후
한꺼번에 출력할 수 있지만 개별적인 요소를 가공한 후 출력
하고자 할 경우는 이 함수를 사용한다. 이 함수의 반대 함수
는 EncodeDate 함수이다. 다음 예는 오늘 날짜와 현재 시간을
조사한 후 문자열 조립을 통해 말로 시간과 날짜를 알려 준
다.

예제)
var
 Present: TDateTime;
 Year, Month, Day, Hour, Min, Sec, MSec: Word;
 begin
 Present:= Now;
 DecodeDate(Present, Year, Month, Day);
 Label1.Caption := '오늘은' + IntToStr(Year) + '년'+ IntToStr(Month) + '
' + IntToStr(Day)+'일입니다.';
 DecodeTime(Present, Hour, Min, Sec, MSec);
 Label2.Caption := '지금은' + IntToStr(Hour) + '시'+ IntToStr(Min)+'분입
니다.';
end;

------------------------------------------------
DecodeTime system Unit

문법 : fun;

시간을 담는 TDateTime형의 변수에서 시, 분, 초의 값을 분리
시킨다. 분리된 값들은 각각 Hour, Min. Sec, MSec 등의 정수
형 변수에 대입된다. 시간값은 TimeToStr 함수로 문자열로 바
꾼 후 한꺼번에 출력할 수 있지만 개별적인 요소를 가공한 후
출력하고자 할 경우는 이 함수를 사용한다. 이 함수의 반대
함수는 EncdoeTime 함수이다. DecodeDate 함수의 예제를 참
조하기 바란다.

------------------------------------------------
Delete system Unit

문법 : procedure Delete (var S:String; Index, Count:Integer);

한 문자열에서 부분 문자열을 삭제한다. S 문자열의 Index 위
치에서부터 Count 문자분의 부분 문자열이 삭제된다. Index가
문자열의 전체 길이보다 길 경우 삭제는 이루어지지 않으며
Count가 문자열의 남은 부분보다 클 경우 문자열이 끝까지
삭제한다. Dest 문자열이 'Orange'일 경우 Delete(Dest,2,3)은
Dest 문자열의 두 번째 문자에서부터 3문자분의 부분 문자열
인 'ran'을 삭제하며 Dest 문자열은 'Oge'가 된다.

------------------------------------------------
DeleteFile SysUtils Unit

문법 : function DeleteFile(const FileName: string): Boolean;

디스크 상의 파일을 지운다. 파일이 없거나 읽기 전용 속성을
가질 경우 False를 리턴하며 파일은 지워지지 않는다. 그러나
파일을 지울 수 없는 경우라도 예외는 발생하지 않는다. 파일
은 경로를 포함할 수 있다. 다음 예는 C 드라이브의 루트에
있는 COMMAND.COM 파일을 지운다. 물론 이 명령을 실행
한 후부터 도스는 부팅되지 않는다.

DeleteFile('c:\command.com');

------------------------------------------------
DirectoryExists FileCtrl Unit

문법 : function DirectoryExists(Name: string): Boolean;

인수로 전달된 디렉토리가 존재하는지 검사하며 존재할 경
우 True를 리턴하고 존재하지 않을 경우 False를 리턴한다.

------------------------------------------------
DiskFree SysUtils Unit

문법 : function DiskFree(Drive: Byte): Longint;

인수로 지정한 Drive에 사용 가능한 용량을 조사해준다. 드라
이브 번호는 0이 현재 드라이브, 1이 A, 2가 B 등이다. 드라이
브 번호가 잘못되었을 경우는 -1을 리턴한다.

------------------------------------------------
DiskSize SysUtils Unit

문법 : function DiskSize(Drive: Byte): Longint;

인수로 지정한 Drive의 총 용량을 조사해준다. 드라이브 번호
는 0이 현재 드라이브, 1이 A, 2가 B 등이다. 드라이브 번호가
잘못되었을 경우는 -1을 리턴한다.

------------------------------------------------
Dispose system Unit

문법 : procedure Dispose(var P:Pointer);

동적으로 할당된 포인터의 메모리를 할당 해제한다 할당이
해제된 포인터 값은 정의되어 있지 않으며 이 포인터를 사용
하여 메모리를 참조할 수 없다. 다음 예제는 문자열 변수를
동적으로 생성하여 사용한 후 해제한다.

예제)
 var
 P: ^string;
begin
 New(P);
 P^ := 'Now you see it...';
 Dispose(P);
end.

------------------------------------------------
DisposeStr SysUtils Unit

문법 : fun;

NewStr 함수에 의해 힙에 할당한 메모리를 해제한다. 주어진
문자열 포인터가 nil이거나 빈 문자열이면 아무 동작도 하지
않는다.

------------------------------------------------
DoneWinCrt WinCrt Unit

문법 : procedure DoneWinCrt;

CRT윈도우를 파괴한다.

------------------------------------------------
DrawButtonFace Buttons Unit

문법 : function DrawButtonFace(Canvas: TCanvas; const
Client: TRect; BevelWidth: Integer; Style: TButtonStyle;
IsRounded, IsDown, IsFocused: Boolean): TRect;

스피드 버튼과 비트맵 버튼의 Paint, DrawItem 메소드에서 내
부적으로 버튼의 모양을 그리기 위해 사용하는 함수이다. 그
러나 사용자도 직접 이 함수를 사용하면 폼이나 이미지의 캔
버스 표면에 버튼 모양의 그림을 쉽게 그릴 수 있다. 인수의
의미는 인수의 이름으로 쉽게 유추할 수 있으므로 설명을 생
략한다. 다음 예는 폼의 좌상단에 버튼 모양의 불쑥 튀어나온
모양을 그린다. 인수를 바꾸어 가면 다양한 버튼 모양을 직접
디자인 해 보아라. 실행 중에 폼을 장식하는 용도로 적합한
함수이다.

예제)
procedure TForm1.Button1Click(Sender: TObject);
begin
DrawButtonFace(Canvas,RECT(10,10,120,50)
 ,3,bsNew,True,False,True);
end;

------------------------------------------------
DSeg system Unit

문법 : function DSeg:Word;

DS 레지스터의 현재값을 구한다. DS 레지스터는 변수 저장
영역의 세그먼트 값을 담는 레지스터이다



반응형