컴포넌트2 (Component) 2009.03.24
컴포넌트 활용 정리 델파이를 실행 프로젝트를 시작 컴파일 오류수정 변수, 함수, 제어 구조 -> 델파이는 컴포넌트를 조립하여 프로그램을 만들어 감에 따라 컴포넌트를 개별적으로 공부 하겠음.
여러가지 컴포넌트 Standard Additional Win31 System
리스트 박스 윈도우가 제공하는 표준 컨트롤의 하나 사용자가 선택할 수 있는 항목들을 여러 개 나열해 두고 선택할 수 있도록 한다.
procedure TForm1.ListBox1Click(Sender: TObject); begin Items[0] Items[1] Items[2] Items[3] procedure TForm1.ListBox1Click(Sender: TObject); begin Form1.Caption := ListBox1.Items[ListBox1.itemIndex]; end;
컴포넌트 속성 값 Form1 name frm_ListForm Caption 리스트폼 Edit1 Text 모두지움 Button1 Name Bt_Add Caption Add Item Button2 Name Bt_Insert Caption Insert Item Button3 Name Bt_Delete Caption Delete Item Button4 Name Bt_Read Caption Read Item
procedure TFrm_List.Bt_AddClick(Sender: TObject); begin ListBox1.Items.Add(Edit1.Text); Edit1.Text := ''; end; procedure TFrm_List.Bt_insertClick(Sender: TObject); ListBox1.Items.Insert(ListBox1.ItemIndex, Edit1.Text); procedure TFrm_List.Bt_deleteClick(Sender: TObject); Listbox1.Items.Delete(ListBox1.ItemIndex); procedure TFrm_List.Bt_ReadClick(Sender: TObject); if ListBox1.ItemIndex = -1 then exit; Edit1.Text := ListBox1.Items[ListBox1.ItemIndex];
여러 개의 문자열을 가지고 있는 일종의 문자열 배열 Items 속성이 문자열 리스트 Count 속성 IndexOf(‘문자열’) 문자열 검색 Add 추가 Insert 삽입 Move 이동 Delete 삭제 -> 속성들이 있다.
콤보박스 리스트 박스의 단점을 보안한 것이 콤보박스 리스트 것만 선택 -> 입력가능 항상 목록을 표시 (크기가 큼)->선택 시 커짐
csDropDown과 csDropDownList 차이점 찾기
체크박스 사용자로 부터 아주 간단한 옵션을 입력받을때 사용 컴포넌트 속성 값 컴포넌트 속성 값 Form1 Caption Check Box Form CheckBox1 Caption 3차원 효과 CheckBox2 Caption 보임 CheckBox3 Caption 읽기전용 procedure TForm1.FormCreate(Sender: TObject); begin CheckBox1.Checked := true; CheckBox2.Checked := true; Checkbox3.Checked := false; end;
procedure TForm1.CheckBox1Click(Sender: TObject); begin if CheckBox1.State = cbChecked then Edit1.Ctl3D := True else Edit1.Ctl3D := false; end; procedure TForm1.CheckBox2Click(Sender: TObject); if CheckBox2.State = cbChecked then Edit1.Visible := true Edit1.Visible := false; procedure TForm1.CheckBox3Click(Sender: TObject); if CheckBox3.State = cbChecked then Edit1.ReadOnly := True Edit1.ReadOnly := false;
라디오 버튼 상호 배타적인 옵션을 선택할 때 사용 3 1 2 3번방식 : RadioGroup1을 선택 후 속성 Itims를 입력한다. 1,2 3
procedure TForm1.RadioButton1Click(Sender: TObject); begin Edit1.CharCase := ecUpperCase; end; procedure TForm1.RadioButton2Click(Sender: TObject); Edit1.CharCase := ecLowerCase; procedure TForm1.RadioButton3Click(Sender: TObject); Edit1.CharCase := ecNormal; procedure TForm1.RadioGroup1Click(Sender: TObject); case RadioGroup1.ItemIndex of 0 : Edit1.Color := clRed; 1 : Edit1.Color := clGreen; 2 : Edit1.Color := clBlue;
체크 리스트 체크 박스와 리스트 박스를 합쳐 놓은 컨트롤 Additional
procedure TForm1.CheckListBox1Click(Sender: TObject); begin if CheckListBox1.Checked[0] = True then Form1.FormStyle := fsStayOnTop else Form1.FormStyle := fsNormal; if CheckListBox1.Checked[1] = True then Form1.Color := clRed Form1.Color := clBtnFace; if CheckListBox1.Checked[2] = True then Form1.BorderStyle := bsSingle Form1.BorderStyle := bsSizeable; if CheckListBox1.Checked[3] = True then Form1.Color := clGreen end;
스크롤 바 속성 의미 Min 스크롤 바가 가질 수 있는 최소값 Max 스크롤 바가 가질 수 있는 최대값 속성 의미 Min 스크롤 바가 가질 수 있는 최소값 Max 스크롤 바가 가질 수 있는 최대값 SmallChange 스크롤 바 양끝의 활사표를 클릭할 때 증감 될 양 LageChange 스크롤 바의 몸통을 클릭할 때 증감될 양 Positon 스코롤 바의 썸의 위치
컴포넌트 속성 값 ScrollBar1 Name SB_Red Edit1 Name ed_Red Edit2 Name ed_Green Edit3 Name ed_Blue 스크롤 바 모두 Min 0 Max 255 LageChange 10 implementation procedure changecolor; begin Form1.Color := Form1.SB_Red.Position + Form1.SB_Green.Position * $100 + Form1.SB_Blue.Position * $10000; end; {$R *.dfm}
procedure TForm1.SB_RedChange(Sender: TObject); begin ed_red.Text := intToStr(SB_Red.Position); ChangeColor; end; procedure TForm1.SB_GreenChange(Sender: TObject); ed_Green.Text := intToStr(SB_Green.Position); procedure TForm1.SB_BlueChange(Sender: TObject); ed_blue.Text := intToStr(SB_Blue.Position); 실행된 모습
B24 b16 b8 b0 사용안함 파랑색 초록색 빨강색
기타 패널 베벨 비트맵버튼 스피드버튼 툴바 상태바 쿨바 탭컨트롤 페이지컨트롤 이미지리스트 테이트타임픽커 달력 타이머 다이얼로그