Transcript vjezbe09

Računarski praktikum 3
Vježbe 10
Vinko Petričević
Konfiguriranje kontrola
Svojstva klase Control








Anchor – Određuje kako je kontrola pričvršćena u svojoj
roditeljskoj kontejnerskoj kontroli.
BackColor – Dohvaća ili postavlja pozadinsku boju kontrole.
BackGroundImage – Predstavlja sliku koja se iscrtava kao pozadinska
slika kontrole.
CausesValidation – Određuje uzrokuje li kontrola validaciju. Validacija
omogućuje provjeru zadovoljava li korisnički unos specifične zahtjeve
oblikovanja i vrijednosti.
ContainsFocus – Označava ima li kontrola, ili neka njezina kontrola
dijete, fokus.
Controls – Dohvaća kolekciju kontrola sadržanih unutar pozivajuće
kontrole. Koristi se samo za kontejnerske kontrole.
Cursor – Predstavlja pokazivač koji se koristi kad prelazimo mišem
preko kontrole.
Dock – Određuje kako je kontrola usidrena u svoju roditeljsku kontrolu.
Svojstva klase Control









Enabled – Određuje dostupnost kontrole. Ako kontrola nije
dostupna, prikazana je zasivljeno i ne može se odabrati (selektirati) niti
urediti (editirati).
Font – Dohvaća ili postavlja font koji se koristi za prikaz teksta u
kontroli.
ForeColor – Predstavlja boju koja se koristi u prvom planu kontrole,
primarno za prikaz teksta.
HasChildren – Vraća vrijednost koja označava ima li kontrola ikoju
kontrolu dijete.
Height – Predstavlja visinu kontrole u pikselima.
Location – Označava lokaciju gornjeg lijevog ugla kontrole u odnosu
na gornji lijevi ugao njezine roditeljske kontrole.
MaximumSize – Dohvaća ili postavlja maksimalnu veličinu kontrole.
MinimumSize – Dohvaća ili postavlja minimalnu veličinu kontrole.
Name – Predstavlja ime koje se koristi za referenciranje kontrole u
kôdu. Ovo svojstvo može biti izmijenjeno jedino kroz dizajner.
Svojstva klase Control








Parent – Dohvaća ili postavlja roditeljsku kontrolu pozivajućoj kontroli.
Postavljanje ovog svojstva dodaje kontrolu Controls kolekciji nove
roditeljske kontrole.
Region – Dohvaća ili postavlja područje prozora povezano s
kontrolom.
Size – Predstavlja veličinu kontrole u pikselima.
TabOrder – Označava koja će po redu kontrola biti selektirana pri
navigiranju od kontrole do kontrole korištenjem Tab tipke na tipkovnici.
Tag – Omogućuje programerima spremanje vrijednosti ili objekta
povezanog s kontrolom.
Text – Dohvaća ili postavlja tekst povezan s kontrolom. Tekst može ili
ne mora biti prikazan ovisno o tipu kontrole i postavkama drugih
svojstava.
Visible – Označava je li kontrola vidljiva ili nije.
Width – Predstavlja širinu kontrole u pikselima.
Podešenja kontrola






Svojstvo Size i Location nam omogućuju da promijenimo
veličinu
možemo ju mijenjati Klikom miša, te pomicati micanjem bijelih
kvadratića
više kontrola možemo selektirati držeći Ctrl
Možemo koristiti Layout alatnu traku za podešenje pozicije (ako je
nema, možemo ju uključiti na View => Toolbars => Layout)
možemo koristiti i linije za poravnavanje koje se automatski pojavljuju
kada prenosimo kontrolu. (ako nisu uključene, možemo ih uključiti na:
Tools => Options => Windows Forms Designer => General =>
LayoutMode => SnapLines)
većinu svojstava možemo podesiti u Properties prozoru (ako ga nema,
uključimo ga na: View => Properties Window)
Podešenja kontrola

neke kontrole imaju Smart Tags – najopćenitije postavke
možemo podesiti klikom na mali gumbić u gornjem desnom kutu
kontrole

Pri kreiranju formi s više kontejnerskih kontrola, može biti koristan
Document Outline (ako ga nema, uključimo ga na: View =>
Other Windows => Document Outline)
Button



glavna kontrola za zapovjednu interakciju između korisnika i
korisničkog sučelja
može prikazati kratki tekst na svojoj površini i može odgovoriti na
korisnički klik
Važnija svojstva:







AutoEllipsis – Omogućuje automatsko hvatanje teksta koji se širi izvan širine
kontrole.
DialogResult – Postavlja vrijednost svojstva DialogResult koja se može povezati s
Button kontrolom, kao npr. DialogResult.OK ili DialogResult.Cancel.
FlatAppearance – Definira stilove koji upravljaju pojavljivanjem i ponašanjem Button
kontrole kad je svojstvo FlatStyle postavljeno na vrijednost Flat.
FlatStyle – Postavlja vizualni stil Button kontrole kad korisnik pomakne miš nad
kontrolu i klikne.
Text – Postavlja tekst koji se pojavljuje na Button kontroli.
TextAlign – Označava kako će tekst prikazan na Button kontroli biti poravnat.
Najčešći događaj je Button_Click – dodajemo ga dvostrukim klikom u
dizajnerskom editoru
Button

Ostale događaje možemo dodati u Properties okviru,
dvostrukim klikom na prazno polje:
private void button1_MouseDown(object sender, MouseEventArgs e) {
switch (e.Button)
{
case MouseButtons.Left:
MessageBox.Show("Kliknuta je lijeva tipka miša!");
break;
case MouseButtons.Right:
MessageBox.Show("Kliknuta je desna tipka miša!");
break;
default: MessageBox.Show("Kliknuta je neka druga tipka miša!");
break;
}
}
Button

svojstva MouseClickEventArgs klase:






Button – Označava tipku miša koja je bila pritisnuta. Moguće vrijednosti su
Left, Right, Middle, None, XButton1 ili XButton2.
Clicks – Dohvaća koliko je puta tipka miša bila pritisnuta i otpuštena.
Delta – Dohvaća za koliko se zareza okrenuo kotačić miša.
Location – Dohvaća trenutačnu lokaciju pokazivača miša.
X – Dohvaća X koordinatu pokazivača miša.
Y – Dohvaća Y koordinatu pokazivača miša.
Zadatak 1



Napravite program koji ima 1 formu.
Na formi treba biti dva gumb. Prilikom klika
na prvi gumb treba podići MessageBox s
porukom o kliku
prilikom podizanja miša na drugom gumbu
treba ispisati poruku o trenutnoj lokaciji
Prihvati (Accept) i Odustani
(Cancel)


općeniti scenarij pri kreiranju Dijaloga su Accept (OK) ili Cancel –
DialogResult vrijednosti
Forma se prikazuje metodom ShowDialog()
DijalogForma dForma = new DijalogForma();
DialogResult dRezultat = dForma.ShowDialog();
if (dRezultat == DialogResult.OK)
{
// Ako je kliknut Accept button radimo nešto
}
else
{
// Inače se radi nešto drugo
}
Label kontrola




koristi se za prikaz tekstualnih informacija samo za čitanje
Text svojstvo označava tekst koji je prikazan
AutoSize svojstvo ako je postavljeno na true automatski proširuje
kontrolu na širinu teksta kojeg prikazuje. U suprotnom veličinu
postavljamo ručno
Možemo ju koristiti za definiranje pristupnih tipki za druge kontrole
(Alt+tipka) za fokusiranje određene kontrole



u imenu ispred znaka koji želimo da se koristi stavimo znak &
svojstvo UseMnemonic stavimo na true
TabIndex svojstvo stavimo za jedan manje od edit kontrole koju želimo
fokusirati
Zadatak 2

Napravite formu koja ima 2 polja za unos
teksta. Ispred prvog neka piše Ime, a ispred
drugog Prezime. Klikom na Alt+I neka se
fokusira prvo, a Alt+P drugo polje
LinkLabel kontrola




omogućuje kreiranje poveznice prema nekoj internetskoj stranici
ActiveLinkColor – Postavlja boju aktivnih linkova.
LinkArea – Označava područje LinkLabel kontrole koje funkcionira kao
link.
LinkBehavior – Označava ponašanje linka







SystemDefault – LinkLabel kontrola će prikazati link na isti način kako je
određeno u sistemu.
AlwaysUnderline – link će uvijek biti podcrtan.
NeverUnderline – link nikada neće biti podcrtan.
HoverUnderline – link će biti podcrtan samo kad je iznad njega pokazivač
miša.
LinkColor – Postavlja boju linka.
LinkVisited – Označava je li link već bio posjećen.
VisitedLinkColor – Postavlja boju posjećenih linkova.
LinkLabel kontrola

događaj LinkLabel.LinkClicked treba obraditi kôd pri kliku, npr, za
otvaranje određene Internet stranice:
// Otvaramo web stranicu u predodređenom internetskom pregledniku
System.Diagnostics.Process.Start("www.math.hr");
// Postavljamo svojstvo LinkVisited na vrijednost true
linkLabel1.LinkVisited = true;
Zadatak 3

Napravite program koji ima dvije forme. Neka
na prvoj bude samo jedan LinkLabel. Neka
se klikom na njega otvori drugi dijalog s
unosom imena i prezimena (neka je pristup
njima – Modifiers – Internal). Ako kliknemo
OK, treba podići MessageBox sa ispisom
imena i prezimena, te staviti da je link već bio
posjećen
TextBox kontrola






omogućuje prikaz i unos teksta, može prikazivati tekst u više
linija, a može prikazivati i maskirane znakove lozinke umjesto teksta
AutoCompleteCustomSource – Ovo svojstvo je string kolekcija koja
sadržava podatke za samodopunu kad je svojstvo AutoCompleteMode
postavljeno na vrijednost različitu od None i AutoCompleteSource
svojstvo postavljeno na vrijednost Custom.
AutoCompleteMode – Postavlja način samodopune kontrole.
AutoCompleteSource – Postavlja izvor podataka za samodopunu.
Može biti postavljeno na različite sistemske izvore ili na prilagođeni
izvor omogućen preko AutoCompleteCustomSource svojstva.
CharacterCasing – Označava velika/mala slova u TextBox kontroli.
Moguće vrijednosti su Normal, Upper ili Lower.
Lines – Vraća polje stringova koji predstavljaju individualne linije u
tekstu TextBox kontrole. Ovo je svojstvo najkorisnije kad je svojstvo
MultiLine postavljeno na vrijednost true.
TextBox kontrola






PasswordChar – Postavlja znak lozinke koji će biti prikazan u TextBox
kontroli umjesto stvarnih znakova.
ReadOnly – Označava može li TextBox kontrola biti editirana.
ScrollBars – Označava trake za pomicanje koje će se prikazati u
TextBox kontroli kad je MultiLine svojstvo postavljeno na vrijednost
true.
Text – Dohvaća ili postavlja tekst sadržan u TextBox kontroli.
UseSystemPasswordChar – Označava hoće li se koristiti sistemski
znak lozinke umjesto stvarnog teksta u TextBox kontroli.
WordWrap – Označava hoće li se riječi automatski presavijati iz jedne
linije teksta u drugu (kad je svojstvo MultiLine postavljeno na
vrijednost true).
MaskedTextBox kontrola







omogućuje uanprijed zadani obrazac za prihvaćanje ili odbijanje
korisničkog unosa
AllowPromptAsInput – Označava predstavlja li odzivni znak (engl.
prompt) ispravan unos.
AsciiOnly – Određuje jesu li samo ASCII znakovi ispravan unos. Ako
je postavljeno na vrijednost true, samo se znakovi A-Z i znakovi a-z
prihvaćaju kao unos.
BeepOnError – Označava šalje li MaskedTextBox kontrola sistemski
zvučni signal (engl. beep) za svaki odbijeni unešeni znak.
CutCopyMaskFormat – Određuje jesu li literali (doslovni znakovi) i
odzivni znakovi uključeni pri izrezivanju (engl. cut) i kopiranju (engl.
copy).
HidePromptOnLeave – Određuje jesu li odzivni znakovi skriveni kad
kontrola izgubi fokus.
InsertKeyMode – Dohvaća ili postavlja način za umetanje teksta za
MaskedTextBox kontrolu.
MaskedTextBox kontrola







Mask – Definira ulaznu masku za MaskedTextBox kontrolu
PromptChar – Dohvaća ili postavlja znak koji se koristi kao odzivni
znak.
RejectInputOnFirstFailure – Dohvaća ili postavlja vrijednost koja
označava hoće li se parsiranje korisničkog unosa zaustaviti nakon
prvog dohvaćenog neispravnog znaka.
ResetOnPrompt – Označava kako će biti obrađena situacija kad je
unesen znak koji se podudara s odzivnim znakom.
ResetOnSpace – Označava kako će biti tretiran uneseni znak
razmaka.
SkipLiterals – Označava trebaju li literali u maski biti ponovno uneseni
ili preskočeni.
TextMaskFormat – Označava jesu li odzivni znak i literali uključeni u
tekst vraćen preko Text svojstva.
MaskedTextBox kontrola

najvažnije svojstvo je Mask. Svojstvo MaskedTextProvider pruža
mehanizam za parsiranje. Kôdovi znakova korišteni u defaultnom
provideru su:


















0 – Predstavlja obaveznu znamenku između 0 i 9.
9 – Predstavlja opcionalnu znamenku između 0 i 9.
# – Predstavlja obaveznu znamenku između 0 i 9 ili razmak. Znakovi plus (+) i minus (-) se također prihvaćaju.
L – Predstavlja obavezno slovo, veliko ili malo (A-Ž, a-ž).
? – Predstavlja opcionalno slovo, veliko ili malo (A-Ž, a-ž).
& – Predstavlja obavezni znak. Ako je svojstvo AsciiOnly postavljeno na vrijednost true, ovaj se element ponaša kao L element.
C – Predstavlja opcionalni znak. Ako je svojstvo AsciiOnly postavljeno na vrijednost true, ovaj se element ponaša kao element ?.
A, a – Predstavlja opcionalni alfanumerički znak. Ako je svojstvo AsciiOnly postavljeno na vrijednost true, prihvaća samo A-Z i a-z.
. – Rezervirano mjesto za decimalni znak. Stvarni znak koji će biti korišten je decimalni znak postavljen preko svojstva FormatProvider.
, – Rezervirano mjesto znaka za grupiranje. Predstavlja separator za tisućice. Stvarni znak koji će biti korišten je znak za grupiranje
postavljen preko svojstva FormatProvider.
: – Separator vremena. Stvarni znak koji će biti korišten je vremenski separator postavljen preko svojstva FormatProvider.
/ – Datumski separator. Stvarni znak koji će biti korišten je datumski separator postavljen preko svojstva FormatProvider.
$ – Simbol valute. Stvarni znak koji će biti korišten je simbol valute postavljen preko svojstva FormatProvider.
< – Pomak dolje. Konvertira sve znakove koji slijede u mala slova.
> – Pomak gore. Konvertira sve znakove koji slijede u velika slova.
| – Otkazuje prethodni pomak gore ili pomak dolje.
\ – Preskače znak maske, pretvarajući ga u doslovan znak (engl. literal character). Na primjer, dvostruka obrnuta kosa crta (\\) je
kontrolna sekvenca za pretvorbu u jednu obrnutu kosu crtu.
Ostali znakovi – Svi ostali znakovi prikazuju se u MaskedTextBox kontroli i korisnik ih ne može premjestiti ili obrisati.
MaskedTextBox kontrola

primjer:





Mask String – Uneseni tekst – Prikazani tekst – Opis
(999)-000-0000 – 1234567890 – (123)-456-7890
00/00/0000 – 07141969 – 07/14/1969 – Zapamtimo da će biti prikazan
stvarni datumski separator određen preko svojstva FormatProvider.
$99,999.00 – 1234567 – $12,3456.00 – Zapamtimo da će biti prikazani
stvarni znak valute, separator za grupiranje i decimalni separator određeni
preko svojstva FormatProvider.
LL>L|LLL<LL – abcdABCD – abCdABcd
Zadatak 4



Napravite formu na kojoj imamo unos imena,
prezimena (text box), adrese (multiline text
box) i telefona (masked text box – format
postavimo na (999)-000-0000)
Omogućite korištenje Alt tipki za prelaz
između kontrola
Neka ima i gumb Prikaži. Ako kliknemo na
njega, neka se u MessageBox prozoru ispišu
svi ti podaci
ListBox kontrola


najjednostavnija list-kontrola, služi za prikaz liste stavki
korisnik može odabrati jednu ili više stavki













DataSource – Postavlja izvor za spajanje podataka (engl. data binding) u toj kontroli.
DisplayMember – Predstavlja podatkovni član (engl. data member) prikazan u toj kontroli.
FormatString – Specificira formatirajući niz znakova koji će biti korišten za oblikovanje stavki u kontroli
ako je svojstvo FormattingEnabled postavljeno na vrijednost true.
FormattingEnabled – Određuje jesu li stavke u kontroli oblikovane koristeći FormatString svojstvo.
Items – Vraća kolekciju stavki koje kontrola sadržava.
MultiColumn – Označava prikazuju li se višestruke kolone stavki ili samo po jedna.
SelectedIndex – Dohvaća indeks označene stavke ili, ako je svojstvo SelectionMode postavljeno na
vrijednost MultiSimple ili MultiExtended, vraća prvi označeni indeks.
SelectedIndices – Vraća kolekciju svih označenih indeksa.
SelectedItem – Vraća označenu stavku ili, ako je svojstvo SelectionMode postavljeno na vrijednost
MultiSimple ili MultiExtended, vraća prvu označenu stavku.
SelectedItems – Vraća kolekciju svih označenih stavki.
SelectedValue – U kontroli vezanoj s podatcima (engl. data-bound control), vraća vrijednost vezanu s
označenom stavkom, Ako kontrola nije vezana s podatcima ili ako svojstvo ValueMember nije
postavljeno, ovo svojstvo vraća vrijednost ToString() metode označene stavke.
SelectionMode – Određuje koliko se stavki može označiti u ListBox kontroli. Može biti postavljeno na
None, Single, MultiSimple ili MultiExtended. MultiSimple omogućuje označavanje više objekata, a
MultiExtended omogućuje korištenje tipki Shift i Ctrl za višestruko označavanje.
ValueMember – Označava podatkovni član koji će dati vrijednosti za ListBox kontrolu.
ComboBox kontrola


osim odabira ponuđenih stavki omogućuje i unos nove stavke
može se konfigurirati za prikaz liste opcija ili kao padajući popis












DataSource – Postavlja izvor za spajanje podataka (engl. data binding) u toj kontroli.
DisplayMember – Predstavlja podatkovni član (engl. data member) prikazan u toj kontroli.
DropDownHeight – Postavlja maksimalnu visinu za padajući dio ComboBox kontrole.
DropDownStyle – Određuje stil kombiniranog okvira. Može biti postavljeno na vrijednost Simple –
kontrola je tada slična ListBox kontroli, ali ne može biti podešen odabir više stavki; DropDown –
predodređena vrijednost; DropDownList – slično kao DropDown, ali ne dopušta korisniku unos
nove vrijednosti.
DropDownWidth – Postavlja širinu padajućeg dijela ComboBox kontrole.
FormatString – Specificira formatirajući niz znakova koji će biti korišten za oblikovanje stavki u
kontroli ako je svojstvo FormattingEnabled postavljeno na vrijednost true.
FormattingEnabled – Određuje jesu li stavke u kontroli oblikovane koristeći FormatString svojstvo.
Items – Vraća kolekciju stavki koje kontrola sadržava.
SelectedIndex – Dohvaća indeks označene stavke.
SelectedItem – Vraća označenu stavku.
SelectedValue – U kontroli vezanoj s podatcima (engl. data-bound control) vraća vrijednost vezanu
s označenom stavkom. Ako kontrola nije vezana s podatcima ili ako svojstvo ValueMemeber nije
postavljeno, ovo svojstvo vraća vrijednost ToString() metode označene stavke.
ValueMember – Označava podatkovni član koji će dati vrijednosti za ListBox kontrolu.
CheckedListBox kontrola

prikazuje listu stavki koje korisnik može višestruko označavati
klikom na kvačicu ispred stavke. Više stavki može biti zakvačeno
(CheckedItems), ali samo jedna selektirana.









CheckedIndices – Vraća kolekciju svih zakvačenih indeksa.
CheckedItems – Vraća kolekciju svih zakvačenih stavki.
FormatString – Specificira formatirajući niz znakova koji će biti korišten za oblikovanje
stavki u kontroli ako je svojstvo FormattingEnabled postavljeno na vrijednost true.
FormattingEnabled – Određuje jesu li stavke u kontroli oblikovane koristeći
FormatString svojstvo.
Items – Vraća kolekciju stavki koje kontrola sadržava.
MultiColumn – Označava prikazuje li kontrola višestruke kolone stavki ili samo
jednostruke stavke.
SelectedIndex – Dohvaća indeks označene stavke ili, ako je svojstvo SelectionMode
postavljeno na vrijednost MultiSimple ili MultiExtended, vraća prvi označeni indeks.
SelectedItem – Vraća označenu stavku ili, ako je svojstvo SelectionMode postavljeno
na vrijednost MultiSimple ili MultiExtended, vraća prvu označenu stavku.
SetItemChecked(indeks, true);
SetItemCheckState(indeks, CheckState.Indeterminate);
list-kontrole

Stavke možemo dodavati koristeči svojstvo Items, za vrijeme
dizajniranja, ili za vrijeme izvršavanja koristeći njegovu metodu Add ili
AddRange
listBox1.Items.Add(“Nova stavka");
listBox1.Items.AddRange(new String[] { "Stavka1", "Stavka2", "Stavka3"});

za ubacivanje na određeni indeks (ostale stavke se miču dolje)
listBox1.Items.Insert(2, "Ova stavka će biti treća po redu");

Uklanjanje
listBox1.Items.Remove(naziv_ili_referenca_objekta);
listBox1.Items.RemoveAt(1);
listBox1.Items.Clear();
list-kontrole

traženje stavke (vraća -1 ako stavka ne postoji):
int indeks = listBox1.Items.IndexOf("Stavka koju tražimo");

određivanje označene stavke:
int oznaceniIndeks = listBox1.SelectedIndex;

ako je SelectionMode MultiSimple ili MultiExtended:
foreach (int i in listBox1.SelectedIndices)
MessageBox.Show(listBox1.Items[i].ToString());




kontrolu možemo spojiti (bind) s izvorom podataka (dana source)
koristeći DataSource, DisplayMember i ValueMember (o tome ćemo
kasnije)
sortiranje možemo postići postavljanjem svojstva Sorted na true
postavljanjem svojstva FormatString možemo postići formatirani prikaz
postavljanje SelectedItem ili SelectedIndex možemo označiti stavku
Zadatak 5

Napravite program koji ima dvije forme. Neka
je druga kao iz prethodnog zadatka, a na
prvoj neka imamo odabir traženja po imenu,
prezimenu, broju telefona ili adresi, te neka
imamo mogućnost izmijene/dodavanja nove
osobe
ListView kontrola

omogućuje pregled listi stavki s opcionalnim pridruženim
ikonama ili dodatnim detaljima



Columns – Sadržava kolekciju kolona koje će biti prikazane kad je svojstvo View
postavljeno na vrijednost Details.
Groups – Sadržava opcionalnu kolekciju grupa koje mogu biti korištene za kategoriziranje
stavki sadržanih u Items kolekciji.
Items – Kolekcija ListViewItem objekata koji se prikazuju u ListView kontroli.









Group – Grupa (ako postoji) iz Groups kolekcije ListView kontrole kojoj taj ListViewItem objekt pripada .
ImageIndex – Indeks slike (ako postoji) koja će biti korištena za tu stavku kad je View svojstvo postavljeno na
vrijednost LargeIcon ili SmallIcon. Ako je svojstvo ImageIndex postavljeno, svojstvo ImageKey ima vrijednost "".
ImageKey – Ključ slike (ako postoji) koji će biti korišten za tu stavku kad je View svojstvo postavljeno na vrijednost
LargeIcon ili SmallIcon. Ako je svojstvo ImageKey postavljeno, svojstvo ImageIndex ima vrijednost null.
SubItems – Sadržava podstavke koje će biti prikazane kad je svojstvo View postavljeno na vrijednost Details. Te
stavke trebaju odgovarati kolonama u Columns kolekciji ListView kontrole.
Text – Tekst koji je prikazan u ListView kontroli.
LargeImageList – ImageList komponenta iz koje se iscrtavaju slike za ListViewItem
objekte kad je svojstvo View postavljeno na vrijednost LargeIcon.
ShowGroups – Određuje prikazuju li se grupe sadržane u Groups kolekciji.
SmallImageList – ImageList komponenta iz koje se iscrtavaju slike za ListViewItem
objekte kad je svojstvo View postavljeno na vrijednost SmallIcon.
View – Označava način na koji su prikazane stavke ListView kontrole
ListView kontrola – dodavanje
slika




na formu dodamo ImegeList kontrolu, te joj na svojstvu Images
dodajemo slike u kolekciju
označimo ListView i podesimo svojstvo SmallImageList, LargeImageList ili
oba na ImageList kontrolu
kliknemo na Items i u ListViewItem_Collection_Editoru postavimo
ImageIndex ili ImageKey svakog objekta na odgovarajuću sliku. Također
postavimo i tekst
u View svojstvu podesimo na LargeIcon ili SmallIcon
TreeView kontrola



omogućuje prikaz liste objekata na hijerarhijski način
svaki objekt je instanca klase TreeNode. Čvorovi koji sadržavaju čvorove
mogu biti skupljeni (collapsed) ili rašireni (expanded)
glavno svojstvo je Nodes. Ono sadrži kolekciju korijenskih TreeNode
objekata. Važnija svojstva TreeNode objekta:









FirstNode – Vraća prvi čvor u trenutačnoj grupi čvorova djece.
LastNode – Vraća zadnji čvor u trenutačnoj grupi čvorova djece.
NextNode – Vraća sljedećeg rođaka trenutačnog čvora (tj. sljedeći čvor koji je
na istoj razini kao i trenutačni).
NextVisibleNode – Vraća sljedeći vidljivi čvor.
Nodes – Vraća kolekciju čvorova djece trenutačnog čvora.
Parent – Vraća čvor roditelj trenutačnog čvora. Ako je trenutačni čvor korijenski
čvor u TreeView kontroli, pokušaj pristupanja ovom čvoru izbacit će
NullReferenceException iznimku.
PrevNode – Vraća prethodni čvor.
PrevVisibleNode – Vraća prethodni vidljivi čvor.
TreeView – Vraća referencu TreeView kontrole kojoj trenutačni čvor pripada.
TreeView kontrola

čvorove možemo dodavati za vrijeme dizajniranja koristeći editor,
ili za vrijeme izvršavanja metodeom Nodes.Add
TreeNode cvor = new TreeNode("Novi čvor");
// Novom čvoru dodajemo još jedan čvor dijete
cvor.Nodes.Add(new TreeNode("Novo dijete"));
// Dodajemo čvor i njegovo dijete kao korijen u
// TreeView kontrolu pod imenom treeView1
treeView1.Nodes.Add(cvor);
// Dodajemo drugo dijete prvom čvoru u kontroli treeView1
treeView1.Nodes[0].Nodes.Add(new TreeNode("Drugo dijete"));

čvorove uklanjamo korištenjem Remove ili RemoveAt (ako ne postoji
dobijemo ArgumentOutOfRange iznimku)
treeView1.Nodes.Remove(cvor); // Uklanja iz kolekcije čvor pod imenom cvor
treeView1.Nodes.RemoveAt(1); // Uklanja iz kolekcije čvor s indeksom 1

raširivanje i skupljanje:
cvor.Expand(); // Raširuje čvorove djecu čvora pod nazivom cvor
cvor.Collapse(); // Skuplja čvorove djecu čvora pod imenom cvor
Zadatak 6

Napravite program koji ima formu za
dodavanje novog mentora, i dodavanje novog
studenta (svaki student može imati samo
jednog mentora). Treba omogućiti prikaz
nastavnik-student u TreeView kontroli, te
omogućiti brisanje određenog
mentora/studenta
NumericUpDown kontrola

omogućuje postavljanje intervala brojeva koje korisnik može
pregledati i označiti






Hexadecimal – Označava hoće li brojčana vrijednost biti prikazana u
heksadecimalnom obliku.
Increment – Dohvaća ili postavlja iznos za koji će se povećavati ili
smanjivati vrijednost u kontroli.
Maximum – Označava maksimalnu vrijednost za kontrolu.
Minimum – Označava minimalnu vrijednost za kontrolu.
ThousandsSeparator – Označava hoće li odgovarajući kulturološki
separator tisućica biti korišten kad se prikazuju vrijednosti veće od
1000.
Value – Dohvaća ili postavlja trenutačnu vrijednost kontrole.
DomainUpDown kontrola

slična NumericUpDown, samo što korisnik pregledava
kolekciju unaprijed zadanih stringova




Items – Sadržava kolekciju stringova koji se prikazuju u kontroli.
ReadOnly – Označava može li korisnik izmijeniti svojstvo Text.
Text – Dohvaća ili postavlja tekst kontrole.
ako je ReadOnly postavljeno na false, korisnik može sam
upisati stavku, ali se ona ne dodaje u Items
Kontrole za odabir


omogućuju odabir vrijednosti
CheckBox omogućava korisniku zakvačiti kvadratić pored određene
oznake. Možemo istovremeno zakvačiti više kontrola






AutoCheck – Određuje čekira li se CheckBox kontrola automatski kad je kliknut
tekst pored nje.
Checked – Dohvaća ili postavlja čekiranost CheckBox kontrole.
CheckState – Vraća stanje čekiranosti kontrole. Moguće vrijednosti su
Checked, Unchecked i Indeterminate.
Text – Tekst koji se prikazuje pored kvadratića za čekiranje.
TreeState – Određuje dopušta li CheckBox kontrola dva ili tri stanja čekiranosti.
RadioButton omogućava odabir samo jedne opcije (unutar jedne
kontejnerske – najčešće GroupBox – kontrole su međusobno
isključive)


Checked – Označava je li RadioButton kontrola selektirana.
Text – Tekst koji se prikazuje pored okruglog gumba (engl. radio
button).
Kontrole za odabir

TrackBar kontrola omogučuje grafičko postavljanje vrijednosti iz
predefiniranog skupa vrijednosti pomicanjem klizača mišem ili tipkovnicom







LargeChange – Broj pozicija za koje se pomakne klizač na klik miša ili pritiskom
tipki Page Up i Page Down.
Maximum – Maksimalna vrijednost TrackBar kontrole.
Minimum – Minimalna vrijednost TrackBar kontrole.
SmallChange – Broj pozicija za koje se pomakne klizač pritiskom na tipke
strelice.
TickFrequency – Broj pozicija između oznaka na TrackBar kontroli.
TickStyle – Označava hoće li se pojavljivati oznake na TrackBar kontroli.
Value – Vrijednost vraćena preko TrackBar kontrole.
Kontrole za odabir

DateTimePicker – kontrola za odabir datima, vremena ili oboje koristeći
sučelje slično ComboBox kontroli






CustomFormat – Prilagođeni format datuma i vremena koji se koristi kad je
svojstvo Format postavljeno na vrijednost Custom.
Format – Postavlja format za prikaz datuma i vremena u DateTimePicker
kontroli. Ovo svojstvo može biti postavljeno na vrijednost Long – prikazuje
vrijednost u obliku dugog datumskog zapisa, Short – prikazuje vrijednost u
obliku kratkog datumskog zapisa, Time – prikazuje samo vrijeme, Custom –
koristi prilagođeni format određen preko CustomFormat svojstva.
MaxDate – Maksimalna vrijednost za datum i vrijeme koju kontrola može
prihvatiti.
MinDate – Minimalna vrijednost za datum i vrijeme koju kontrola može
prihvatiti.
Value – Vrijednost za datum i vrijeme na koju je kontrola trenutačno
postavljena.
Kada je Format postavljen na Time, iako Value sadržava i datumski dio,
on se neće prikazati na kontroli
Kontrole za odabir

MonthCalendar omogućuje označiti datumski interval











AnnuallyBoldedDates – Sadržava polje datuma i vremena koji će se prikazivati
podebljano svake godine.
BoldedDates – Sadržava polje datuma i vremena koji će se pojaviti podebljani.
FirstDayOfWeek – Određuje koji je dan u tjednu postavljen kao prvi dan u
tjednu MonthCalendar kontrole.
MaxDate – Postavlja maksimalni datum koji se može odabrati u kontroli.
MinDate – Postavlja minimalni datum koji se može odabrati.
MaxSelectionCount – Postavlja maksimalni broj dana koji se mogu označiti.
MonthlyBoldedDates – Sadržava polje datuma i vremena koji će se pojaviti
podebljani svakog mjeseca.
SelectionEnd – Označava završni datum i vrijeme SelectionRange svojstva.
SelectionRange – Sadržava datumski interval koji je korisnik selektirao.
SelectionStart – Označava početni datum i vrijeme SelectionRange svojstva.
nakon što odaberemo jedan datum, držeći Shift možemo odabrati
drugi datum intervala.
Zadatak 7


Napravite formu sa kolegijima s prve godine.
svaki označeni kolegij treba omogućiti odabir
ocjene (4 RadioButton kontrole) i datuma
kada je kolegij položen
Rad sa slikama

PictureBox kontrola služi za prikaz slika. Može prikazivati slike uobičajenih
formata, a može ih učitati iz resursa, kompajlirane u aplikaciju ili ih
možemo učitati sa diska ili interneta.







ErrorImage – Slika koja će biti prikazana ako se ne učita selektirana slika.
Image – Slika koja će se učitati u PictureBox kontrolu.
ImageLocation – Internetska ili diskovna adresa iz koje će se slika učitati.
InitialImage – Slika koja će biti prikazana u PictureBox kontroli dok se slika
učitava.
SizeMode – Određuje kako kontrola upravlja smještanjem slike i promjenom
veličine.
Ako prilikom učitavanja u resurse sliku učitamo kao lokalni resurs,
bit će dostupan samo toj PictureBox kontroli
Ako je slika već učitana, možemo svojstvo Image postaviti na tu
sliku
System.Drawing.Bitmap slika = new Bitmap(@"c:\slika.bmp");
pictureBox1.Image = slika;
Rad sa slikama


ImageList je komponenta koja omogućuje organiziranje slika u grupe.
nije kontrola, nego služi drugim kontrolama kao npr. ListView ili PictureBox



ColorDepth – Postavlja dubinu boje (broj dostupnih boja) za slike unutar
kontrole. Ovo svojstvo treba biti postavljeno prije postavljanja svojstva Images
jer se slike iz kolekcije Images nakon njegovog postavljanja brišu.
Images – Kolekcija slika organiziranih pomoću ImageList komponente.
ImageSize – Postavlja veličinu za slike unutar ImageList kontrole.
pictureBox1.Image = imageList1.Images[0];

možemo ju koristiti i za slike na drugim kontrolama (Button,
CheckBox, …) koje imaju svojstva ImegeList, ImageKey i
ImageIndex.
WebBrowser kontrola


omogućuje pregled HTML datoteka i učitavanje sadržaja s interneta
možemo ju koristiti za pružanje online pomoći za našu aplikaciju,
učitavanje i printanje dokumenata i za prikaz dokumenata u različitim
formatima
WebBrowser kontrola –
svojstva














AllowWebBrowserDrop – Određuje otvaraju li se dokumenti ispušteni u WebBrowser kontrolu
automatski.
CanGoBack – Vraća može li WebBrowser kontrola navigirati unatrag.
CanGoForward – Vraća može li WebBrowser kontrola navigirati naprijed.
Document – Vraća trenutačni HTML dokument u WebBrowser kontroli.
DocumentStream – Vraća tijek (engl. stream) povezan s trenutačnim dokumentom.
DocumentText – Vraća tekstualnu reprezentaciju trenutačnog dokumenta.
DocumentTitle – Vraća naslov trenutačnog dokumenta.
DocumentType – Vraća tip trenutačnog dokumenta.
IsOffLine – Vraća je li sistem offline.
IsWebBrowserMenuEnabled – Određuje je li standardni Microsoft Internet Explorerov
kontekstni izbornik omogućen za WebBrowser kontrolu.
ScriptErrorsSuppressed – Određuje jesu li skriptne greške koje se događaju u dokumentu
potisnute ili se prikazuju u dijaloškom okviru.
ScrollBarsEnabled – Određuje jesu li za kontrolu omogućene trake za pomicanje.
URL – Dohvaća ili postavlja URL za trenutačni dokument.
WebBrowserShortcutsEnabled – Dohvaća ili postavlja jesu li standardni prečaci na tipkovnici
Internet Explorera omogućeni za WebBrowser kontrolu.
WebBrowser kontrola –
metode












GoBack() – Navigira na prethodnu stranicu u navigacijskoj povijesti ako je dostupna.
GoForward() – Navigira na sljedeću stranicu u navigacijskoj povijesti ako je dostupna.
GoHome() – Navigira na preglednikovu početnu stranicu.
GoSearch() – Navigira na preglednikovu stranicu za pretraživanje.
Navigate() – Navigira na specificirani URL.
Print() – Ispisuje trenutačni dokument.
ShowPageSetupDialog() – Prikazuje Internet Explorerov dijaloški okvir za postavljanje
stranice.
ShowPrintDialog() – Prikazue Internet Explorerov dijaloški okvir za ispis.
ShowPrintPreviewDialog() – Prikazuje Internet Explorerov dijaloški okvir za pregled prije
ispisa.
ShowPropertiesDialog() – Prikazuje Internet Explorerov dijaloški okvir za postavke.
ShowSaveAsDialog() – Prikazuje Internet Explorerov Spremi kao dijaloški okvir ako je
dokument drugačijeg tipa od HTML stranice.
Stop() – Otkazuje procesirajuću navigaciju i zaustavlja dinamičke elemente stranice.
webBrowser1.Navigate("www.math.hr");
webBrowser1.Navigate(@“d:\test.doc");
Zadatak 8



Napravite formu s jednim horizontalnim
SplitContainerom, s fiksnim prvim panelom, a
na drugi stavimo WebBrowser kontrolu
u prvi panel stavimo gumove &Naprijed,
Na&zad i &Idi (sa nekakvim sličicama) te sa
TextBoxom u kojem je adresa na koju treba
ići
napravite i da je moguće koristeći Alt tipku
fokusirati gumbove
NotifyIcon komponenta




prikazuje se u sistemskoj traci (system tray)
obično se koristi s aplikacijama koje se izvršavaju u pozadini
u balončićima (balloon tip) prikazuje informacije
možemo ju povezati s ContextMenuStrip ako želimo dopustiti korisnicima
izvršavanje komandi iz njezinog kontekstnog izbornika desnim klikom miša







BalloonTipIcon – Ikona koja će biti prikazana u balončiću. Ovo svojstvo može biti
postavljeno na vrijednost None – ne prikazuje ikonu ili na Info, Warning, ili Error.
BalloonTipText – Postavlja tekst koji će se prikazivati u balončiću.
BalloonTipTitle – Postavlja naslov balončića.
ContextMenuStrip – Dohvaća ili postavlja ContextMenuStrip komponentu povezanu s
NotifyIcon komponentom.
Icon – Ikona koja se prikazuje u sistemskoj traci.
Text – Tekst koji se prikazuje kad se korisnik zaustavi mišem nad ikonom u sistemskoj
traci.
Visible – Označava je li ikona vidljiva u sistemskoj traci.
notifyIcon1.ShowBalloonTip(10);

prikazuje balončić 10 sekundi