Differenze tra le versioni di "Uso della Classe WorkSpace"
Da Gambas-it.org - Wikipedia.
Riga 46: | Riga 46: | ||
End Select | End Select | ||
<FONT color=#006400>' ''Diamo un colore casuale a ciascuna "Window":''</font> | <FONT color=#006400>' ''Diamo un colore casuale a ciascuna "Window":''</font> | ||
− | + | .Background = Rnd(&000000, &FFFF00) | |
End With | End With | ||
<FONT color=#006400>' ''Inseriamo ciascuna "Window" in una variabile array di tipo "Window",'' | <FONT color=#006400>' ''Inseriamo ciascuna "Window" in una variabile array di tipo "Window",'' |
Versione delle 06:13, 12 gen 2013
La Classe WorkSpace consente di utilizzare un oggetto speciale somigliante ad una TabStrip. La WorkSpace implementa un'area di valoro naloga ad una TabStrip, in ciascuna scheda della quale è possibile inglobare delle finestre di primo livello. Per poter inglobare tali oggetti Window nella WorkSpace, sarà necessario inanzitutto istanziarli, e, differentemente dall'oggetto TabStrip', bisognerà inserirli mediante il metodo .Add .
Ci si sposterà da una scheda ad un'altra della WorkSpace, semplicemente cliccando sulla rispettiva linguetta.
Per poter utilizzare detta Classe bisognerà attivare il componente: gb.form.mdi .
Esempio pratico
Mostriamo un semplice esempio, nel quale viene creata una WorkSpace con tre schede:
Private ws As Workspace Public Sub Form_Open() ' Dichiariamo la variabile del tipo Window per le finestre ' che dovranno essere inglobate nelle schede della "WorkSpace": Dim w As Window Dim ww As New Window[] Dim j As Byte ' Istanziamo ad esmepio tre oggetti di tipo "Window" ' che saranno inglobati in tre rispettive schede della "WorkSpace": For j = 0 To 2 With w = New Window(Fmain) .Border = True .W = 100 .H = 100 Select Case j Case 1 ' Nel secondo oggetto "Window" poniamo una immagine: .Picture = Picture.Load("percorso_file_immagine") Case 2 ' Nel terzo oggetto "Window" poniamo una "TextLabel", ' affinché si abbia almeno una scheda della "WorkSpace" con del testo: With tl = New TextLabel(w) .X = 60 .Y = 100 .W = 150 .H = 80 .Border = Border.Sunken .Background = Rnd(&000000, &FFFF00) .Text = "Questa è una TextLabel posta nella terza scheda della WorkSpace !" End With End Select ' Diamo un colore casuale a ciascuna "Window": .Background = Rnd(&000000, &FFFF00) End With ' Inseriamo ciascuna "Window" in una variabile array di tipo "Window", ' per poter trasferire le variabili "Window" alla "WorkSpace" successivamente: ww.Add(w) Next ' Creaiamo l'oggetto "WorkSpace" e gli attribuiamo delle proprietà: With ws = New Workspace(FMain) As "pippo" .X = 10 .Y = 30 .W = 400 .H = 400 For j = 0 To ww.Max .Add(ww[j]) .Windows[j].Caption = "Scheda" & CStr(j + 1) ' Poniamo le linguette di ciascuna scheda in alto (ad ogni modo così è di default). ' Se volessimo farle apparire in basso la proprietà sarebbe: "Align.Bottom": .Orientation = Align.Top .Font.Bold = True Next ' Stabiliamo che la scheda in risalto sarà la seconda: .ActiveWindow = ww[1] End With End