Autor | Thema: Tab-Control und ChoiceBox | | Datum:10.10.02 19:13 
(uwe.beisler@t-online.de) | |
Hi,
ich möchte eine ChoiceBox auf einem Tab-Control ein und ausblenden.
Die einfache ChoiceBox läuft (Beispiel 1).
Das Ein- und Ausblenden funktioniert zumindest mit einem Text-Control
aber die ChoiceBox sieht man nur mit einem schnellen Auge.
Was mache ich falsch ?
Beispiel 1:
declare ende%,SChoice11%,SChoice12%,Tabdialog%
Window 0,0-800,571
Usefont "Arial",15,0,0,0,0
Tabdialog% = %Hwnd
let SChoice12%=@createchoicebox(Tabdialog%,"",0,0,0,0)
SetWindowPos SChoice12%= 20,50-60,80;0 'Auswahl Jahrgang zeigen
@addchoice(SChoice12%,"08")
@addchoice(SChoice12%,"10")
@addchoice(SChoice12%,"12")
@addchoice(SChoice12%,"14")
@addchoice(SChoice12%,"16")
Whilenot Ende%
Waitinput
If %key = 2
ende%=1
Endif
wend
destroywindow(Tabdialog%)
end
Beispiel 2:
declare ende%,SChoice12%,SText11%,Tabdialog%,Tabcontrol&,AktivesTab&
Window 0,0-800,571
Usefont "Arial",15,0,0,0,0
PROC TAB1AKTIV
setwindowpos SChoice12%= 20,50-60,80;0
setwindowpos SText11% = 120,50-80,20;0
ENDPROC
PROC TAB1INAKTIV
setwindowpos SChoice12% =0,0-0,0;0
setwindowpos SText11% =0,0-0,0;0
ENDPROC
PROC INITTAB
Usefont "Arial",15,0,0,0,0
Tabdialog% = %Hwnd
Tabcontrol& = Create("Tabctrl",Tabdialog%,"Schüler",0,0,width(tabdialog%),height(tabdialog%)-20)
InsertTab(Tabcontrol&,1,"Schule")
SChoice12%=@createchoicebox(Tabdialog%,"",0,0,0,0)
@addchoice(SChoice12%,"08")
@addchoice(SChoice12%,"10")
@addchoice(SChoice12%,"12")
@addchoice(SChoice12%,"16")
@addchoice(SChoice12%,"18")
SText11% =Create("text",Tabdialog%,"Vorname",0,0,0,0)
ENDPROC
INITTAB
TAB1AKTIV
Whilenot Ende%
Waitinput
If tabchanged(TabControl&)
AktivesTab&= GetActiveTab(Tabcontrol&) 'Ermittelt das selektierte Tab
If AktivesTab& = 0
Tab1Aktiv
Elseif AktivesTab& = 1
Tab1Inaktiv
Endif
Elseif %Key = 4
seterrorlevel 0
setwindowpos Tabcontrol& = 0,0 - width(tabdialog%),(height(tabdialog%)-20);0
setwindowpos coptext% = 0,(height(tabdialog%)-20) - width(tabdialog%),20;0
If AktivesTab& = 2
setwindowpos mltedit%=0,26-width(tabcontrol&),(height(tabcontrol&)-26);0
Endif
Elseif %key = 2
ende%=1
Endif
Settext Tabdialog%,"Aktives Tab: "+str$(AktivesTab&)
wend
destroywindow(Tabcontrol&)
destroywindow(Tabdialog%)
end
|
| | Datum: 10.10.02 19:40 
(uwe.beisler@t-online.de) | |
Nachdem ich bis eben lange und verzweifelt nach dem Fehler gesucht habe bin ich nun darauf gekommen wie ich die Auswirkung umgehen kann :
...
PROC INITTAB
Cls @RGB(23,23,23)
Tabdialog% = %Hwnd
Tabcontrol& = Create("Tabctrl",Tabdialog%,"Schüler",0,0,width(tabdialog%),22)
...
OK, sicher nicht der eleganteste Weg aber es läuft.
|
|
|