Newsgroup: it.comp.lang.delphi
Titolo: tabsheet

sto usando il pagecontrol per passare da una finestra all'altra; per non far 
vedere che sto usando dei tabsheet vorrei nascondere le linguette; è 
possibile e se si come?
Io ho provato a settare la porprietà tabsheet.visible :=  false ma cosi mi 
sparisce tutto. 

Govny ha scritto:

Prova con la property TabVisible di ciascuna pagina (D7 pro) ;-)
Del tipo
   for i := 0 to PageControl1.PageCount - 1 do
     PageControl1.Pages[i].TabVisible := False;
Se sistemi questo codicillo nel FormShow, puoi tenere le linguette 
visibili a design time, facilitandoti non di poco nella fase di sviluppo.
Saluti
 
	Marco Bortolani
	info @ 
marcobortolani.it

 ha scritto nel messaggio 
news:TU%8e.1256025$35.46...@news4.tin.it...

ho provato e mi fa lo stesso scherzo
quando lancio il programma ottengo una form vuota e non vedo più i 
componenti che ho piazzato.
Ho D7


 componenti che ho piazzato.
Accertati di aver selezionato la pagina attiva iniziale attraverso la 
proprietà /ActivePage/ (o /ActivePageIndex) del controllo *TPageControl*.
Ciao! :-)
-- 
MARCO «Alka» BREVEGLIERI
   (
http://www.marco.breveglieri.name
)
Leggi le FAQ di ICLD: 
http://icld.altervista.org

 
Non avrei detto di meglio ;-)

fatto!
però ottengo sempre lo stesso risultato, sulla form non vedo niente.
Ho provato anche a inserire il seguente codice nell' onshow della form:
PageControl1.ActivePageIndex := 0;
e poi ho provato anche con questo:
PageControl1.ActivePage := Tabsheet1;
ma nisba
quando lo faccio mi spariscono tutti i componenti della form. 

 [...]
Ma...sulla prima pagina del *PageControl* (TabSheet1) hai inserito dei 
controlli visuali? :-/


Govny ha scritto:

Come ti ha suggerito anche Marco Breveglieri, sei sicuro che ci siano 
dei controlli posizionati effettivamente su TabSheet1 (intendo dire che 
hanno TabSheet1 come Parent)?
Uso lo stratagemma che ti ho indicato da un pezzo in quasi tutti i 
programmi che faccio e non mi ha mai dato problemi, quindi temo che 
l'inghippo sia localizzato nella tua applicazione...
	Marco
	info @ 
marcobortolani.it

 ha scritto nel messaggio 
news:e3a9e.798775$b5.35...@news3.tin.it...

Ho delle label è un button.
l'object treeView è il seguente:
Form1
        Pagecontrol1
            Tabsheet1
                Label1
                Label2
                Button1
            Tabsheet2
                Label3
                Label4
                Button2
all'onclick del button1 è associato la seguente procedura:
procedure TForm1.Button1Click(Sender: TObject);
begin
  PageControl1.ActivePage := Tabsheet2;
end;
che ho usato per passare dalla prima alla seconda pagina
al Button2 è associata la seguente procedura:
procedure TForm1.Button2Click(Sender: TObject);
begin
  Close;
end;
che uso per chiudere l'applicazione.
non c'è altro.
la cosa strana è che finchè non setto la proprietà tabvisible a false tutto 
funziona bene 

Govny ha scritto:

Sul mio sito trovi l'esempio che hai descritto tu con le dritte 
suggerite da Marco Breveglieri e da me perfettamente funzionante: vedi 
magari dove sta l'inghippo:
 
http://www.marcobortolani.it/icld/TabVisible.zip
Saluti


grazie ho dato un occhiata e ho risolto
è bastato mettere l'istruzione:
PageControl1.ActivePageIndex := 0;
dopo le istruzioni:
PageControl1.Pages[0].TabVisible := False;
PageControl1.Pages[1].TabVisible := False;
io l'avevo messo prima.
Comunque non ho capito perchè mettendolo prima dia questo problema. 

 Comunque non ho capito perchè mettendolo prima dia questo problema. 
Evidentemente, esiste un automatismo che rende "deselezionata" come 
pagina corrente una pagina impostata con /TabVisible/ a False, forse 
perchè l'uso che ne facciamo in questo frangente non è proprio, in tutto 
e per tutto, quello originalmente pensato. :-)
