본문 바로가기
델파이 프로그래밍 정보

컴포넌트 기본사용법-2강

by 알 수 없는 사용자 2017. 3. 29.
728x90
반응형

17.3.29 컴포넌트2


1. Label

ON을 누르면 Label1이 보이고, OFF를 누르면 Label1이 안보이게 해봅시다.


procedure TForm1.Button1Click(Sender: TObject);

begin

  label1.Visible := True;

end;


procedure TForm1.Button2Click(Sender: TObject);

begin

  label1.Visible := False;

end;





글자색상과 글자크기를 바꿔봅니다.


 - 1) Inspector에서 바꿔보기

 - 레이블(Label)을 만들고 글자크기와 글자색상을 위와 같이 변경해보세요.




 - 2) 버튼을 누르면 아래와 같이 바뀌도록 소스를 작성해보세요

Before



After


procedure TForm1.Button1Click(Sender: TObject);

begin

  Label1.Font.Size := 50;

  Label2.Font.Size := 40;

  Label3.Font.Size := 30;

  Label4.Font.Size := 20;

  Label5.Font.Size := 20;


  label4.Font.Color := clRed;

  label5.Font.Color := clLime;

end;




2. Listbox


 - Form에 Listbox와 Button 컴포넌트를 추가합니다.


 - 버튼을 클릭하면 Listbox1 에 메세지가 표시되도록 만들어봅니다.


procedure TForm1.Button1Click(Sender: TObject);

begin

  Listbox1.Items.Add('1번 클릭'); // Listbox1에 메세지 출력

end;



이것을 응용하여 2번클릭과 3번클릭 버튼을 추가로 만들어보세요.




그리고, 


위의 소스에 

ListBox1.ItemIndex := Listbox1.Items.count - 1;

를 추가한 것의 차이를 확인해보세요.



procedure TForm1.Button1Click(Sender: TObject);

begin

  Listbox1.Items.Add('1번 클릭');

  ListBox1.ItemIndex := Listbox1.Items.count - 1;

end;





1에서 45까지의 숫자를 랜덤으로 Listbox에 출력하는 것



var

  Form1: TForm1;


  a : integer;


implementation


uses Math;


{$R *.dfm}


procedure TForm1.Button1Click(Sender: TObject);

begin

  // 번호 섞기

  Randomize;


  // 변수에 랜덤으로 숫자 집어넣기(1부터 45까지 중에서 랜덤)

  a := RandomRange(1,45);


  // 리스트박스에 출력하기

  Listbox1.Items.Add(IntToStr(a));

end;




3. Timer



타이머로 버튼을 클릭하도록 만들기


var

  Form1: TForm1;

  a : Integer;


implementation


uses Math;


{$R *.dfm}


procedure TForm1.Button1Click(Sender: TObject);

begin

  // 번호 섞기

  Randomize;


  // 변수에 랜덤으로 숫자 집어넣기(1부터 45까지 중에서 랜덤)

  a := RandomRange(1,45);


  // 리스트박스에 출력하기

  Listbox1.Items.Add(IntToStr(a));

end;


procedure TForm1.Timer1Timer(Sender: TObject);

begin

  Button1Click(nil);

end;



원하는 숫자가 나오면 타이머를 멈추고, 메세지 출력하기


procedure TForm1.Timer1Timer(Sender: TObject);

begin

  Button1Click(nil);


  if a = 1 then

  begin

    Timer1.Enabled := False;


    Form1.Color := clRed;

    ShowMessage('1이다');

  end;

end;





버튼에 따라 메세지창 출력 해보기 의 모든것





procedure TForm1.Button1Click(Sender: TObject);

begin

  ShowMessage('1');

end;


procedure TForm1.Button2Click(Sender: TObject);

begin

  Application.MessageBox('쓸말','제목',MB_OK);

end;


procedure TForm1.Button3Click(Sender: TObject);

begin

  Application.MessageBox('쓸말','제목',MB_OKCANCEL);

end;


procedure TForm1.Button4Click(Sender: TObject);

begin

  if Application.MessageBox('쓸말','제목',MB_OKCANCEL) = IDOK then

  begin

    Form1.Color := $FFAFFA;

  end else

  begin

    Form1.Color := clRed;

  end;

end;


procedure TForm1.Button5Click(Sender: TObject);

begin

  if Application.MessageBox('쓸말','제목',MB_OKCANCEL + MB_ICONERROR) = IDOK then

  begin

    Form1.Color := $FFAFFA;

  end else

  begin

    Form1.Color := clRed;

  end;

end;

728x90
반응형

'델파이 프로그래밍 정보' 카테고리의 다른 글

컴포넌트 기본 사용법 - 3강  (0) 2017.04.03
Key Hook 예제  (0) 2017.04.03
컴포넌트 기본사용법 - 1강  (0) 2017.03.29
델파이(Delphi) 자료  (2) 2017.03.21
쿼리문  (0) 2017.03.09

댓글