| |
|
|
Frank Abbing | Toolbar(CheckButton... checkt immer nur den letzten Button, und somit nur einen. Wird aus der Hilfe nicht klar. Welche Möglichkeit besteht, mehrere Buttons gleichzeitig zu checken? |
|
|
| |
|
|
|
Dieter Zornow | Normalerweise sollten die Buttons doch über den 2. Parameter MenuItem-Wert unterscheidbar sein, wenn das nicht der Fall ist, ist es ein eindeutiger Bug |
|
|
| Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2 | 23.12.2008 ▲ |
|
|
|
|
Frank Abbing | Die Unterscheidbarkeit ist nicht das Problem. Nur kann ich derzeit nur einen Button gleichzeitig checken. |
|
|
| |
|
|
|
Andreas Miethe
| Frank Abbing
Die Unterscheidbarkeit ist nicht das Problem. Nur kann ich derzeit nur einen Button gleichzeitig checken.
Hallo Frank,
dazu müssen die Buttons einen anderen Style haben. KompilierenMarkierenSeparierenDeclare hToolBar&, hBild&, ende%
WindowStyle 63
Cls
hToolbar& = @Create(TOOLBAR, %hWnd, 0, 0, 32, 2000, 1)
@Toolbar(AddButton, hToolBar&, 0, 2000, Knopf 1)
@Toolbar(Separator, hToolbar&)
@Toolbar(AddButton, hToolBar&, 1, 2001, Hugo)
@Toolbar(AddButton, hToolBar&, 2, 2002, Klaus)
@Toolbar(AddButton, hToolBar&, 3, 2003, Ina)
@Toolbar(AddButton, hToolBar&, 4, 2004, Nix)
@Toolbar(Separator, hToolbar&)
@Toolbar(AddButton, hToolBar&, 5, 2005, ENDE)
@Toolbar(Separator, hToolbar&)
@Toolbar(AddGroupButton, hToolBar&, 6, 2006, Nix)
@Toolbar(AddGroupButton, hToolBar&, 7, 2007, Nix)
@Toolbar(AddGroupButton, hToolBar&, 8, 2008, Nix)
@Toolbar(AddGroupButton, hToolBar&, 9, 2009, Nix)
@Toolbar(CheckButton, hToolbar&, 2006, 1)
@Toolbar(CheckButton, hToolbar&, 2007, 1)
@Toolbar(CheckButton, hToolbar&, 2008, 1)
@Toolbar(CheckButton, hToolbar&, 2009, 1)
WhileNot ende%
WaitInput
If %KEY = 2
ende% = 1
ElseIf %KEY = 4
SetWindowPos hToolbar& = 0, 0 - 0, 0; 0
ElseIf @MenuItem(2000)
@MessageBox(2000, Test, 0)
ElseIf @MenuItem(2001)
@MessageBox(2001, Test, 0)
ElseIf @MenuItem(2002)
@MessageBox(2002, Test, 0)
ElseIf @MenuItem(2003)
@MessageBox(2003, Test, 0)
ElseIf @MenuItem(2004)
@MessageBox(2004, Test, 0)
ElseIf @MenuItem(2005)
ende% = 1
EndIf
EndWhile
End
SUBPROC Toolbar.AddGroupButton
Parameters Toolbar&,ImageId&,CommandId&,Text$
Declare TB_Button#
Dim TB_BUTTON#,20
Long TB_BUTTON#,0=ImageId&,-CommandId&
Byte TB_BUTTON#,8 = 4,2,0,0
Long TB_BUTTON#,12 = 0,ADDR(Text$)
Sendmessage(Toolbar&,1045,-1,TB_BUTTON#)
Dispose TB_BUTTON#
ENDPROC
|
|
|
| Gruss Andreas ________ ________ ________ ________ _ Profan 3.3 - XProfanX2 Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher Homepage : [...] | 23.12.2008 ▲ |
|
|
|
|
Frank Abbing | Groups, genau. War noch nicht grossartig zum Testen gekommen. Danke dir! Vielleicht kann Roland die Funktion/den Style noch mit aufnehmen. |
|
|
| |
|
|
|
RGH | Hallo, das Problem war nicht ein fehlender Stil, sondern ein irrtümlich gesetzer Stil. Natürlich soll mit Toolbar(CheckButton,n%) jeder beliebige Button gecheckt oder eben nicht gecheckt dargestellt werden, ohne andere Buttons oder Funktionen zu beeinträchtigen. Wenn Du in Andreas Code die Zeile Byte TB_BUTTON#,8 = 4,2,0,0 in Byte TB_BUTTON#,8 = 4,0,0,0 änderst, dann kannst Du die SubProc für alle Buttons verwenden. Der Style sollte also 0 und nicht, wie irrtümlich derzeit in XProfan, 4 sein. Der erste Parameter in dieser Zeile ist der Zustand des Buttons und der zweite, um den es hier geht, der Style. (Der 3. und 4. Parameter sind ungenutzt.)
(Style 4 = BTNS_GROUP, Style 2 = BTNS_CHECK ohne Group-Effekt. Da das Checken in XProfan durch SetCheck und nicht automatisch durch Clicken erfolgen soll, wird keiner dieser Styles benötigt. So ist es ganz den Wünschen des Programmierers überlassen, was er machen will. Natürlich steht es ihm frei, nach Andreas Vorlage die Toolbar-Funktion um AddCheckButton (Style = 2) bzw. AddRadioButton (Style = 4) zu erweitern. Aus diesem Grunde wurde SUBPROC eingeführt.)
In der nächsten XProfan-Version reagieren die Buttons auf SetCheck wie erwartet.
Gruß Roland |
|
|
| Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 10.02.2009 ▲ |
|
|
|