Moin,
Ich befürchte ich kann mich bei dieser frage nicht richtig ausdrücken aber ich versuch es mal: Undzwa: Ich habe mir Ein Menü angelegt und mir bei einem Menü eintrag ein submenü gemacht. Da sind zwei Menüitems drinnen. Wenn ich jetzt einen davon drücke sollte vor dem gedrückten ein harken erscheinen so wie bei scite wenn ihr unter views mal schaut, da kann man auch sachen auswählen und dann ist da ein harken davor wenn es aktiviert ist. Wie mach ich das?
(Hoffe ihr habt mich richtig verstanden)
mfg Kangtar
GUICtrlCreateMenuItem wenn man gedrückt hat ist davor ein harken?
-
- [ gelöst ]
-
Kangtar -
28. März 2009 um 13:36 -
Geschlossen -
Erledigt
-
-
Hi Kangtar,
schau mal unter View, ob ich das richtig verstanden habe ?Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
#include<GUIConstantsEx.au3>
#include<StaticConstants.au3>GUICreate("My GUI menu",300,200)
[/autoit] [autoit][/autoit] [autoit]Global $defaultstatus = "Ready"
[/autoit] [autoit][/autoit] [autoit]
Global $status$filemenu = GUICtrlCreateMenu ("&File")
[/autoit] [autoit][/autoit] [autoit]
$fileitem = GUICtrlCreateMenuitem ("Open",$filemenu)
GUICtrlSetState(-1,$GUI_DEFBUTTON)
$helpmenu = GUICtrlCreateMenu ("?")
$saveitem = GUICtrlCreateMenuitem ("Save",$filemenu)
GUICtrlSetState(-1,$GUI_DISABLE)
$infoitem = GUICtrlCreateMenuitem ("Info",$helpmenu)
$exititem = GUICtrlCreateMenuitem ("Exit",$filemenu)
$recentfilesmenu = GUICtrlCreateMenu ("Recent Files",$filemenu,1)$separator1 = GUICtrlCreateMenuitem ("",$filemenu,2) ; create a separator line
[/autoit] [autoit][/autoit] [autoit]$viewmenu = GUICtrlCreateMenu("View",-1,1) ; is created before "?" menu
[/autoit] [autoit][/autoit] [autoit]
$viewstatusitem = GUICtrlCreateMenuitem ("Statusbar",$viewmenu)
GUICtrlSetState(-1,$GUI_CHECKED)
$okbutton = GUICtrlCreateButton ("OK",50,130,75,22)
GUICtrlSetState(-1,$GUI_FOCUS)
$cancelbutton = GUICtrlCreateButton ("Cancel",180,130,75,22)$statuslabel = GUICtrlCreateLabel ($defaultstatus,0,165,300,16,BitOr($SS_SIMPLE,$SS_SUNKEN))
[/autoit] [autoit][/autoit] [autoit]GUISetState ()
[/autoit] [autoit][/autoit] [autoit]
While 1
$msg = GUIGetMsg()
If $msg = $fileitem Then
$file = FileOpenDialog("Choose file...",@TempDir,"All (*.*)")
If @error <> 1 Then GUICtrlCreateMenuitem ($file,$recentfilesmenu)
EndIf
If $msg = $viewstatusitem Then
If BitAnd(GUICtrlRead($viewstatusitem),$GUI_CHECKED) = $GUI_CHECKED Then
GUICtrlSetState($viewstatusitem,$GUI_UNCHECKED)
GUICtrlSetState($statuslabel,$GUI_HIDE)
Else
GUICtrlSetState($viewstatusitem,$GUI_CHECKED)
GUICtrlSetState($statuslabel,$GUI_SHOW)
EndIf
EndIf
If $msg = $GUI_EVENT_CLOSE Or $msg = $cancelbutton Or $msg = $exititem Then ExitLoop
If $msg = $infoitem Then Msgbox(0,"Info","Only a test...")
WEnd
GUIDelete()Exit
[/autoit]
Viel Erfolg ! -
Genau das suche ich. Nur sollte sich der Harken verschieben. Im Submenü gibt es bei mir 2 einträge. Am anfang soll der harken bei einem sein und wenn ich auf den anderen eintrag klicke soll er sich zu dem anderen verschieben (also zu dem anderen Menü eintrag). Ginge das auch?
mfg Kangtar -
- Offizieller Beitrag
Probier mal das aus, ich denke es macht was du suchts.Vorrausgesetzt ich habe es richtig verstanden .
Spoiler anzeigen
[autoit]#include<GUIConstantsEx.au3>
[/autoit]
#include<StaticConstants.au3>
GUICreate("My GUI menu", 300, 200)
Global $defaultstatus = "Ready"
Global $status
$filemenu = GUICtrlCreateMenu("&File")
$fileitem = GUICtrlCreateMenuItem("Open", $filemenu)
GUICtrlSetState(-1, $GUI_DEFBUTTON)
$helpmenu = GUICtrlCreateMenu("?")
$saveitem = GUICtrlCreateMenuItem("Save", $filemenu)
GUICtrlSetState(-1, $GUI_DISABLE)
$infoitem = GUICtrlCreateMenuItem("Info", $helpmenu)
$exititem = GUICtrlCreateMenuItem("Exit", $filemenu)
$recentfilesmenu = GUICtrlCreateMenu("Recent Files", $filemenu, 1)
$separator1 = GUICtrlCreateMenuItem("", $filemenu, 2) ; create a separator line
$viewmenu = GUICtrlCreateMenu("Optionen", -1, 1) ; is created before "?" menu
$viewstatusitem1 = GUICtrlCreateMenuItem("Option1", $viewmenu)
GUICtrlSetState(-1, $GUI_CHECKED)
$viewstatusitem2 = GUICtrlCreateMenuItem("Option2", $viewmenu)
$okbutton = GUICtrlCreateButton("OK", 50, 130, 75, 22)
GUICtrlSetState(-1, $GUI_FOCUS)
$cancelbutton = GUICtrlCreateButton("Cancel", 180, 130, 75, 22)
GUISetState()
While 1
$msg = GUIGetMsg()
If $msg = $fileitem Then
$file = FileOpenDialog("Choose file...", @TempDir, "All (*.*)")
If @error <> 1 Then GUICtrlCreateMenuItem($file, $recentfilesmenu)
EndIf
If $msg = $viewstatusitem1 Then
GUICtrlSetState($viewstatusitem1, $GUI_CHECKED)
GUICtrlSetState($viewstatusitem2, $GUI_UNCHECKED)
EndIf
If $msg = $viewstatusitem2 Then
GUICtrlSetState($viewstatusitem2, $GUI_CHECKED)
GUICtrlSetState($viewstatusitem1, $GUI_UNCHECKED)
EndIf
If $msg = $GUI_EVENT_CLOSE Or $msg = $cancelbutton Or $msg = $exititem Then ExitLoop
If $msg = $infoitem Then MsgBox(0, "Info", "Only a test...")
WEnd
GUIDelete()
Exit -
Wenn man die Radio-Option setzt, funktioniert das ohne viel Code:
Spoiler anzeigen
[autoit]#include<GUIConstants.au3>
[/autoit] [autoit][/autoit] [autoit]
GUICreate("RadioMenuItems")$mnuAlleOptionen = GUICtrlCreateMenu("Optionen")
[/autoit] [autoit][/autoit] [autoit]$mnuOptions = GUICtrlCreateMenu("Ausrichtung",$mnuAlleOptionen)
[/autoit] [autoit][/autoit] [autoit]
$mriRechts = GUICtrlCreateMenuItem("Rechts",$mnuOptions,-1,True)
$mriZentriert = GUICtrlCreateMenuItem("Zentriert",$mnuOptions,-1,True)
$mriLinks = GUICtrlCreateMenuItem("Links",$mnuOptions,-1,True)
GUICtrlSetState(-1, $GUI_CHECKED)GUICtrlCreateMenuItem("",$mnuOptions) ; Damit werden die beiden Optionsgruppen getrennt
[/autoit] [autoit][/autoit] [autoit]$mriOben = GUICtrlCreateMenuItem("Oben",$mnuOptions,-1,True)
[/autoit] [autoit][/autoit] [autoit]
$mriMitte = GUICtrlCreateMenuItem("Mitte",$mnuOptions,-1,True)
GUICtrlSetState(-1, $GUI_CHECKED)
$mriUnten = GUICtrlCreateMenuItem("Unten",$mnuOptions,-1,True)GUISetState()
[/autoit] [autoit][/autoit] [autoit]While 1
[/autoit]
$Msg = GUIGetMsg()
Switch $Msg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd -
Moin, danke für eure Antowrten. Ich finde die lösung von progandy wirklich kurz (vom code her) und auch finde ich das was passt für mich. Die sache mit dem harken habe ich mal ausprobiert.
Danke für eure Hilfe
mfg Kangtar