블로그 이미지
자료에 문제가 있을 경우, 확인하는대로 삭제처리 하겠습니다. 즐거운 하루 되시길...
04-29 06:44
Total
Today
Yesterday

카테고리

분류 전체보기 (199)
이야기방 (20)
공부방 (173)
개발관련&IT용어.. 등등; (7)
잡다구니 (8)
OS & Server (13)
NetWork (3)
DB (30)
Delphi (47)
LUA (0)
JAVA (6)
HTML (10)
XML (1)
ASP (5)
JSP (2)
자바스크립트 (27)
CSS (8)
ETC.. (6)
개발노트&관련잡다구니 (6)

'공부방/Delphi'에 해당되는 글 47건

  1. 2018.04.06 [델파이] array 관련
  2. 2018.04.06 [델파이] delay
  3. 2018.04.06 [델파이] SendMessage - String 으로 넘기기

배열의 선언

var

   A : array[0..5] of integer;

 

오브젝트 파스칼의 경우 c에서처럼 항상 0부터 시작하지 않는 경우도 있다.

 

예)

  A : array[28..30] of integer;

 

위와 같은 경우 루프나 index 참조시 조심해야 하는데 이때는 배열의 상한과 하한을 알려주는

Low(), High()를 사용하면 된다.

예)

  for i := Low(A) to High(A) do

       //todo

  end;

 

이차원 배열(다차원 배열)

  var

    A : array[1..2, 1..2] of integer

 

동적 배열

오브젝트 파스칼에서의 동적 배열

  선언

  var 

    A : array of string

  메모리 할당

  SetLength(A, 33);

  사용

  A[0] := 'Object Pascal';

  동적배열은 항상 0부터 시작된다.

 

메모리 해제

  A := nil;

 

동적 배열은 일반 배열과 달리 AnsiString에서 사용하는 참조 기법을 사용한다.

따라서 값 복사 시 유의해야 한다.

예)

 var

  A1, A2 : array of integer;

 begin

  SetLength(A1, 100);

  A2 := A1;

  A1[0] := 50;

  A2[0] := 3;

이 경우 A1의 값이 3으로 바뀐다.

이런 경우가 발생하지 않게 하려면 Copy 명령을 사용해야 한다.

 

이차원 동적 배열 할당

AA : array of array of integer;

원본링크 : http://blog.naver.com/PostView.nhn?blogId=skyofdus&logNo=30027965521


Posted by 래채
, |

[델파이] delay

공부방/Delphi / 2018. 4. 6. 10:56
Time <- 1000 : 1초
 
procedure delay(Time: Integer);
var
  PastCount: LongInt;
begin
  PastCount := GetTickCount;
  repeat
    Application.ProcessMessages;
  until ((GetTickCount-PastCount) >= LongInt(Time));
end;
 

 

Posted by 래채
, |
- 호출부
SendMessage(호출되는 handle,  WM_SampleCall, AHandle.Handle, DWORD(PChar(ADescription)));

- 수신부
(선언)
procedure _SampleCall(var Message: TMessage); message WM_SampleCall;
(구현)
procedure TfrmMain.SampleCall(var Message: TMessage);
var
  sMsg : PChar;
begin
  sMsg := PChar(Message.lParam);
  Message.Result := 1;
  ShowWait(nil, sMsg);
end;


Posted by 래채
, |