| |
|
|
Thomas Zielinski | Hallo alle zusammen, wärend meiner Bastelein, stieß ich auf einen hässlichen Anzeigefehler. Wenn sich auf einem TabCtrl ein HScroll (vlt. auch VScroll war zu faul zum austesten) und man den kleinen Schieberegler mit der Maus verschiebt, so verschwinden alle Reiter der TabCtrl. Auch scheint mir das überhaupt alles neugezeichnet wird, was sich auf dem TabCtrl brfindet. Zumindist flackert es kurz. Getestet unter Win7 HomePremium 64bit mit XProfan 11.2 Wie schaff ich dem ganzem Abhilfe? KompilierenMarkierenSeparieren {$iq}
cls
var tab& = Create("TabCtrl",%HWnd,"eins",0,0,300,150)
InsertTab(tab&, 1, "zwei")
InsertTab(tab&, 2, "drei")
var hscroll& = Create("HScroll",tab&,"",20,100,100,20)
var ende& = Create("Button",%HWnd,"Ende",20,200,100,25)
var e% = 0
While e% = 0
WaitInput
If GetFocus(ende&)
e% = 1
EndIf
EndWhile
End
Gruß Thomas |
|
|
| XProfan X4; Win10 x64 Der Kuchen ist eine lüge! | 22.06.2010 ▲ |
|
|
|
|
Thomas Zielinski | Nachtrag: Hab ein wenig rumprobiert, und mit VScroll passiert mir das ganze nicht. Gruß Thomas |
|
|
| XProfan X4; Win10 x64 Der Kuchen ist eine lüge! | 22.06.2010 ▲ |
|
|
|
|
Dieter Zornow | Das HScroll reagiert ja auch nicht richtig, das heißt es springt bei mir immer sofort in die Ausgangsstellung zurück. Wenn du es auf %Hwnd setzt ist alles ok |
|
|
| Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2 | 22.06.2010 ▲ |
|
|
|
|
| Hallo Thomas, um Fenster/ Dialoge etc scrollbar zu machen, einfach die ScrollControl-Funktion [...] verwenden. |
|
|
| |
|
|
|
Thomas Freier | Es erschließt sich mir einfach nicht: was soll das hscroll& = Create("HScroll",tab &,"",20,100,100, 20) auf dem Create("TabCtrl",%HW nd,"eins",0,0,300,15 0) ? hscroll& würde dann auf allen TABs sein. |
|
|
| |
|
|
|
Thomas Zielinski | Hallo Dieter, ja auch das ist mir aufgefallen hatte es nur nicht erwähnt. Und nun zu iF: Ich muss eingestehen das ich einfach, schlicht und ergreifend zu doof bin um das anzuwenden
aber notfalls bau ich mir mein eigenes TabCtrl. bzw was ähnliches
und zu letzt Thomas: ich wollt mir die abfrage im minimalbsp einfach nur sparen... |
|
|
| XProfan X4; Win10 x64 Der Kuchen ist eine lüge! | 22.06.2010 ▲ |
|
|
|
|
Thomas Freier | Soweit mir bekannt, gehts nicht direkt auf dem TAB-Control. KompilierenMarkierenSeparierencls
var tab& = Create("TabCtrl",%HWnd,"eins",0,0,300,150)
InsertTab(tab&, 1, "zwei")
InsertTab(tab&, 2, "drei")
var ELEMENT1&=Control("DIALOG","",$54001100,0,22,300,150,tab&,0,%hinstance,$0)
var ELEMENT2&=Control("DIALOG","",$54001100,0,22,300,150,tab&,0,%hinstance,$0)
var ELEMENT3&=Control("DIALOG","",$54001100,0,22,300,150,tab&,0,%hinstance,$0)
var hscroll& = Create("HScroll",ELEMENT1&,"",20,100,100,20)
var hscroll2& = Create("VScroll",ELEMENT2&,"",260,20,20,100)
var ende& = Create("Button",ELEMENT3&,"Ende",20,100,100,25)
var e% = 0
var hsc& = Create("Button",tab&,"Test und Ende",20,40,160,20) direkt auf tab&
Showwindow(Element1&,1)
Showwindow(Element2&,0)
Showwindow(Element3&,0)
While e% = 0
WaitInput
If GetFocus(ende&)
e% = 1
elseif GetFocus(hsc&)
DrawText 10,200, "Test"
BREAK
EndIf
IF TABCHANGED(Tab&)
IF GetActiveTab(Tab&) = 0
Showwindow(Element1&,1)
Showwindow(Element2&,0)
Showwindow(Element3&,0)
ELSEIF GetActiveTab(Tab&) = 1
Showwindow(Element1&,0)
Showwindow(Element2&,1)
Showwindow(Element3&,0)
ELSEIF GetActiveTab(Tab&) = 2
Showwindow(Element1&,0)
Showwindow(Element2&,0)
Showwindow(Element3&,1)
ENDIF
EndIf
EndWhile
End
|
|
|
| |
|
|
|
Thomas Zielinski | Ah okay! Also einfach noch was anderes drunderpappen. So sollt es klappen. Dank dir! Gruß Thomas
Nachtrag: Klappt wunderbar. (auf sowas Simples hätte man auch selbst kommen können) |
|
|
| XProfan X4; Win10 x64 Der Kuchen ist eine lüge! | 22.06.2010 ▲ |
|
|
|