Ćwiczenie8, Sprawozdania, Instrukcje labolatoryjne


Komponenty reprezentujące listy

Do komponentów reprezentujących listy należą:

Komponent ListBox

Komponent ListBox reprezentuje standardową listę wyboru w Windows. Jeżeli lista ta zawiera więcej elementów niż jest w stanie jednocześnie wyświetlić, dostęp do pozostałych jest możliwy dzięki paskom przewijania.

Komponent ComboBox

Komponent ComboBox jest listą specjalizowaną, a w rzeczywistości kombinacją listy
i kontrolki edycyjnej. Użytkownik może wybrać element z listy lub wpisać wartość w polu edycji, Gdy użytkownik wybierze element z listy zostanie on umieszczony w kontrolce edycji. Istnieją trzy różne typy obiektów Combo, które określa właściwość Style:

Właściwości list i obiektów Combo

Columns

Komponent: ListBox

Właściwość ta zawiera liczbę kolumn w liście. Możliwe jest utworzenie listy posiadającej kilka kolumn nadając jej wartość większą niż 1. Wartość domyślna 0.

ExtendedSelection

Komponent: ListBox

Właściwość ta określa możliwość stosowania rozszerzonego wyboru. Rozszerzony wybór polega na tym , że użytkownik może wielokrotnie wybrać element za pomocą kombinacji Shift+klik i Ctrl+klik. Właściwość ta przestaje mieć znaczenie jeżeli właściwość MultiSelect jest False. Wartość domyślna True.

IntegralHeight

Komponent: ListBox

Właściwość ta przyjmuje wartość True jeżeli chcemy aby wysokość listy była modyfikowana w ten sposób, by zapobiec wyświetlaniu niepełnych wierszy. Wartość domyślna False.

ItemHeight

Komponenty: ListBox, ComboBox

Właściwość ta jest wykorzystywana w przypadku ręcznie rysowanych pól list i obiektów Combo. Określa wysokość elementów w kontrolce. Wartość domyślna: 13.

Items

Komponenty: ListBox, ComboBox

Właściowść przechowująca elementy pola listy.

MaxLength

Komponent: ComboBox

Właściwość ta określa maksymalną liczbę znaków jaką użytkownik może wpisać do części edycyjnej.

MultiSelect

Komponent: ListBox

Właściwość ta przyjmując wartość True pozwala na wybór wielu elementów jednocześnie. Wartość domyślna False.

Sorted

Komponenty: ListBox, ComboBox

Właściwość ta przyjmując wartość True powoduje sortowanie elementów listy w porządku rosnącym. W przypadku wartości False elementy są nieposortowane. Wartość domyślna False.

Style

Komponent: ComboBox

Właściwość ta określa styl obiektu Combo. Możliwe wartości to csSimple, csDropDown, csDropDownList, csOwnerDrawFixed, csOwnerDrawVariable. Wartość domyślna csDropDown.

Komponent: ListBox

Właściwość ta określa styl obiektu ListBox. Możliwe wartości to: lbStandard, lbOwnerDrawFixed, lbOwnerDrawVariable. Wartość domyślna lbStandard.

TabWidth

Komponent: ListBox

Właściwość ta określa szerokość tabulacji, która może być dostępna w pikselach. Wartość domyślna 0.

Text

Komponent: ComboBox

Właściwość ta przechowuje teks znajdujący się w części edycyjnej obiektu Combo.

Właściwości dostępne w czasie wykonywania

ItemIndex

Komponent: ListBox

Właściwość ta przechowuje indeks aktualnie wybranego elementu. Pierwszy element listy ma indeks 0, jeżeli żaden nie jest wybrany indeks przyjmuje wartość -1. Przypisanie właściwości ItemIndex odpowiedniej wartości powoduje automatyczne wybranie odnośnego elementu.

SelCount

Komponent: ListBox

Właściwość ta zawiera liczbę elementów zaznaczonych na liście.

Selected

Komponent: ComboBox

Właściwość ta zwraca wartość True jeżeli określony element listy jest elementem wybranym, False w przeciwnym przypadku.

SelLength

Komponent: ComboBox

Właściwość ta zawiera długość tekstu wybranego aktualnie w edycyjnej części obiektu Combo.

SelStart

Komponent: ComboBox

Właściwość ta zawiera indeks pierwszego znaku zaznaczonego tekstu w kontrolce edycyjnej.

SelText

Komponent: ComboBox

Właściwość ta przechowuje aktualnie zaznaczony tekst w kontrolce edycyjnej.

TopIndex

Komponent: ListBox

Właściwość ta przechowuje indeks pierwszego (od góry) wyświetlanego elementu listy.

Przyciski opcji i pola wyboru

Przyciski opcji i pola wyboru są kontrolkami specjalizowanymi. Oba komponenty RadioButton i CheckBox posiadają właściwość Checked, która może posłużyć do ustawienia stanu zaznaczenia i może być odczytana w celu ustalenia jej bieżącego stanu. Przyciski opcji są zwyczajowo stosowane w grupach. Znajdują one zastosowanie dla grupy opcji, z których w danej chwili może być wybrana tylko jedna. Jeżeli należy użyć pojedynczego przycisku lepiej wykorzystać pola wyboru. Przyciski opcji umieszczane
w formularzu będą automatycznie traktowane jako część tej samej grupy. Aby wyodrębnić więcej niż jedną grupę przycisków opcji i grupy te muszą funkcjonować niezależnie od siebie, wtedy należy użyć komponentu RadioGroup. Komponent ten umożliwia szybkie ustawienie grupy przycisków opcji razem z otaczającą je ramką i etykietą. Stosując komponent RadioGroup można umieścić w programie więcej niż jedną grupę przycisków pracujących niezależnie. Komponent RadioGroup posiada właściwość ItemIndex, którą można odczytywać w celu określenia, który z elementów grupy został wybrany. Można również ustawić tę właściwość wymuszając w ten sposób wybranie odpowiedniego przycisku opcji. Dodatkowo dla tego komponentu ustawia się właściwość Item, gdzie podaje się listę dostępnych w danej grupie opcji i właściwość Caption określającą tytuł naszej grupy opcji.

Komponent CheckBox stanowiący pole wyboru, umożliwia użytkownikowi włączanie
i wyłączanie określonej opcji lub wskazuje na fakt aktywności lub nieaktywności opcji
w danej chwili. Pole wyboru może przyjmować maksymalnie dwa lub trzy stany
( w zależności od swojego stylu): aktywny, nieaktywny i przyciemniony. Jeżeli właściwość AllowGrayed pola wyboru jest ustawiona na wartość false, może być ono jedynie aktywne lub nieaktywne. Jeżeli ta wartość wynosi true, pole wyboru może przyjmować dodatkowo stan przyciemnienia, który zwany jest też stanem nieokreślonym i jest obsługiwany w sposób programowy. Innymi słowy do programisty należy określenie co znaczy przyciemniony stan pola. Kiedy właściwość AllowGrayed jest ustawiona na False do określenia stanu pola można wykorzystywać właściwość Checked. W przeciwnym przypadku do określenia stanu pola wyboru trzeba się posłużyć właściwością State, która może zwrócić jedną z trzech wartości:

Komponent SpeedButton

Komponent ten został zaprojektowany do współpracy z komponentem Panel przy budowie pasków narzędzi. Domyślnie ma on wymiar 25*25 pikseli i nie zawiera tekstu. Do jego najważniejszych właściwości należą:

GroupIndex

Przyciski SpeedButton mogą być grupowane tak aby zachowywały się jak przyciski opcji. Po naciśnięciu jednego przycisku, przycisk ten pozostaje wciśnięty (jego właściwość Down ustawia się na True), a przycisk poprzednio wciśnięty pozostaje zwolniony. Aby utworzyć grupę przycisków wystarczy właściwości GroupIndex przypisać dowolną wartość

AllowAllUp

Domyślnie jeden z przycisków grupy musi pozostawać przez cały czas w pozycji wciśniętej. Można to zachowanie zmienić ustawiając właściwość AllowAllUp na wartość True.

Down

Odczyt właściwości udostępnia wartość True jeżeli w danej chwili przycisk jest wciśnięty
i False w przeciwnym przypadku. Przypisanie właściwości Down nowej wartości spowoduje automatycznie adekwatną zmianę stanu przycisku. Nie dają jednak efektów zmiany właściwości Down dla przycisku nie należącego do żadnej grupy (właściwość GroupIndex ustawiona jest na 0) .

Cel ćwiczenia

Podstawowym celem ćwiczenia jest zapoznanie się użytkownika Delphi z komponentami listowymi i komponentami wyboru opcji oraz poznanie mechanizmów manipulowania poszczególnymi ich właściwościami i metodami. Dodatkowo użytkownik powinien zaznajomić się również z możliwościami wykorzystania poszczególnych komponentów do realizacji koniecznych w aplikacji operacji z jednoczesnym zachowaniem efektu standardowej aplikacji Windows.

Przebieg ćwiczenia

Program 1.

Oto kroki, które należy wykonać aby go stworzyć:

  1. Utwórz katalog, w którym znajdą się pliki do tego projektu i uruchom Delphi.

  2. Na ekranie pojawi się okno projektu formularza o nazwie Form1. Za pomocą Inspektora Obiektów zmień właściwość Caption na własną. Aby to osiągnąć, zaznacz formularz, wybierz odpowiednią kartę w oknie inspektora obiektów, przewiń listę tak, by wyświetlić opcję Caption i kliknij ją. Tekst Form1 zastąp swoim.

  3. Na formularzu umieść następujące komponenty:

Pole edycyjne Edit, Listbox, cztery przyciski Button, dwa obiekty RadioGroup.

  1. Dla poszczególnych komponentów zmień właściwości w następujący sposób:

Przycisk1: właściwość Caption zmień na Dodaj;

Przycisk2: właściwość Caption zmień na Sortuj;

Przycisk3: właściwość Caption zmień na Kasuj;

Przycisk4: właściwość Caption zmień na Kasuj zaznaczone;

RadioGroup1: właściwość Caption zmień na Wybór zaznaczenia, we właściwości Items po kliknięciu na trzy kropki i otwarciu okna edycyjnego dopisz dwie linie:

Wybór wielu

Wybór jednego

RadioGroup2: właściwość Caption zmień na Sortowanie, we właściwości Items po kliknięciu na trzy kropki i otwarciu okna edycyjnego dopisz dwie linie:

Posortowany

Nie posortowany.

Edit : właściwość text zmień na ` `.

Listbox: we właściwości Items po kliknięciu na trzy kropki i otwarciu okna edycyjnego dopisz kilka linii.

  1. Dla poszczególnych przycisków dopisz odpowiednie procedury obsługi:

Przycisk1 - Dodaj:

listbox1.Items.add( edit1.text)

Przycisk2 - Sortuj:

Listbox1.Sorted:= true;

Przycisk3 - Kasuj:

listbox1.Clear;

Przycisk4 - Kasuj zaznaczone:

var

i:integer;

begin

for i:=0 to listbox1.items.count-1 do

if listbox1.Selected[listbox1.ItemIndex] then

listbox1.items.Delete(listbox1.itemindex);

end;

RadioGroup1

if radiogroup1.itemindex = 0 then listbox1.MultiSelect:= true

else listbox1.multiselect:=false;

RadioGroup2

if radiogroup1.itemindex = 0 then listbox1.sorted:= true

else listbox1.sorted:=false;

  1. Dodaj przycisk wyjścia z programu

  2. Zapisz wszystko (Save All) nadając poszczególnym plikom odpowiednie nazwy.

Wybierz przycisk Run lub F9 i uruchom napisaną przez siebie aplikację.

Zadanie 2

Wykorzystując przyciski opcji i pola wyboru napisz aplikację obsługującą jakąś ankietę.

1

7



Wyszukiwarka

Podobne podstrony:
Ćwiczenie2, Sprawozdania, Instrukcje labolatoryjne
ćwiczenie7, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie6, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie11, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie5, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie10, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie1, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie4, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie3, Sprawozdania, Instrukcje labolatoryjne
Ćwiczenie2, Sprawozdania, Instrukcje labolatoryjne
Cwiczenie75, sprawozdania, Fizyka - Labolatoria, Ćwiczenie nr75
Ćwiczenie nr 50b, sprawozdania, Fizyka - Labolatoria, Ćwiczenie nr50b
Doświadczalne spr p. Malusa, sprawozdania, Fizyka - Labolatoria, Ćwiczenie nr70
Mechanika gruntów - Ćwiczenie 1 - Sprawozdanie 1, Budownictwo S1, Semestr III, Mechanika gruntów, La
Ćwiczenie nr 82, sprawozdania, Fizyka - Labolatoria, Ćwiczenie nr82
Ćwiczenie nr 65c, sprawozdania, Fizyka - Labolatoria, Ćwiczenie nr65c
Mechanika gruntów - Ćwiczenie 5 - Sprawozdanie 4, Budownictwo S1, Semestr III, Mechanika gruntów, La
SPRAWOZDANIE Z ĆWICZENIA POMIARY PROMIENIOWANIA LABOLATORIUM MASZYN I URZĄDZEŃ ENERGETYCZNYCH
Ćwiczenie nr 65, sprawozdania, Fizyka - Labolatoria, Ćwiczenie nr65

więcej podobnych podstron