1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. Yjuq

Beiträge von Yjuq

  • Radio Buttons: Variable setzen und auslesen, aber wie?

    • Yjuq
    • 12. November 2012 um 15:25

    Okey, als erstes benötigst du eine GUI, die Radio Buttons und ein Button:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    Opt('GUIOnEventMode', 1)
    Opt('GUICloseOnEsc', 0)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $GUI = GUICreate('Beispiel', 200, 200)
    $Radio_1 = GUICtrlCreateRadio('Radio 1', 15, 20, 100, 20)
    $Radio_2 = GUICtrlCreateRadio('Radio 2', 15, 40, 100, 20)
    $Radio_3 = GUICtrlCreateRadio('Radio 3', 15, 80, 100, 20)
    $Button_1 = GUICtrlCreateButton('Read Radio', 15, 100, 100, 20)
    GUISetOnEvent($GUI_EVENT_CLOSE, '_Exit', $GUI)
    GUISetState(@SW_SHOW, $GUI)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    While Sleep(1000)
    WEnd

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func _Exit()
    Exit
    EndFunc

    [/autoit]

    Wie man sieht, hat es schon die Eigenschaft dass nur 1 ausgewählt wird. Um dies manuell zu bestimmen, benötigst du eine Gruppe für die Radio Buttons:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    Opt('GUIOnEventMode', 1)
    Opt('GUICloseOnEsc', 0)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $GUI = GUICreate('Beispiel', 200, 200)
    GUICtrlCreateGroup('Gruppe 1', 5, 5, 120, 70)
    $Radio_1 = GUICtrlCreateRadio('Radio 1', 15, 20, 100, 20)
    $Radio_2 = GUICtrlCreateRadio('Radio 2', 15, 40, 100, 20)
    GUICtrlCreateGroup('', -99, -99, 0, 0) ;~ Dies ist wichtig um die 1te Gruppe abzuschließen.
    $Radio_3 = GUICtrlCreateRadio('Radio 3', 15, 80, 100, 20)
    $Button_1 = GUICtrlCreateButton('Read Radio', 15, 100, 100, 20)
    GUISetOnEvent($GUI_EVENT_CLOSE, '_Exit', $GUI)
    GUISetState(@SW_SHOW, $GUI)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    While Sleep(1000)
    WEnd

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func _Exit()
    Exit
    EndFunc

    [/autoit]

    Nun wird für den Button [Read Radio] eine Funktion erstellt. Diese soll auslesen welche Radio Buttons ausgewählt sind.

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    Opt('GUIOnEventMode', 1)
    Opt('GUICloseOnEsc', 0)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $GUI = GUICreate('Beispiel', 200, 200)
    GUICtrlCreateGroup('Gruppe 1', 5, 5, 120, 70)
    $Radio_1 = GUICtrlCreateRadio('Radio 1', 15, 20, 100, 20)
    $Radio_2 = GUICtrlCreateRadio('Radio 2', 15, 40, 100, 20)
    GUICtrlCreateGroup('', -99, -99, 0, 0) ;~ Dies ist wichtig um die 1te Gruppe abzuschließen.
    $Radio_3 = GUICtrlCreateRadio('Radio 3', 15, 80, 100, 20)
    $Button_1 = GUICtrlCreateButton('Read Radio', 15, 100, 100, 20)
    GUICtrlSetOnEvent($Button_1, '_ReadRadio')
    GUISetOnEvent($GUI_EVENT_CLOSE, '_Exit', $GUI)
    GUISetState(@SW_SHOW, $GUI)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    While Sleep(1000)
    WEnd

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func _Exit()
    Exit
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _ReadRadio()
    If BitAND(GUICtrlRead($Radio_1), $GUI_CHECKED) Then ConsoleWrite('+> Radio 1 Checked' & @CRLF)
    If BitAND(GUICtrlRead($Radio_2), $GUI_CHECKED) Then ConsoleWrite('+> Radio 2 Checked' & @CRLF)
    If BitAND(GUICtrlRead($Radio_3), $GUI_CHECKED) Then ConsoleWrite('+> Radio 3 Checked' & @CRLF)
    EndFunc

    [/autoit]

    Weil man den 3. Radio Button nicht wieder auf unchecked setzen kann, brauchen wir dafür auch wieder eine Funktion und eine Variable.

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    Opt('GUIOnEventMode', 1)
    Opt('GUICloseOnEsc', 0)

    [/autoit] [autoit][/autoit] [autoit]

    $Radio3_IsChecked = False

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $GUI = GUICreate('Beispiel', 200, 200)
    GUICtrlCreateGroup('Gruppe 1', 5, 5, 120, 70)
    $Radio_1 = GUICtrlCreateRadio('Radio 1', 15, 20, 100, 20)
    $Radio_2 = GUICtrlCreateRadio('Radio 2', 15, 40, 100, 20)
    GUICtrlCreateGroup('', -99, -99, 0, 0) ;~ Dies ist wichtig um die 1te Gruppe abzuschließen.
    $Radio_3 = GUICtrlCreateRadio('Radio 3', 15, 80, 100, 20)
    $Button_1 = GUICtrlCreateButton('Read Radio', 15, 100, 100, 20)
    GUICtrlSetOnEvent($Button_1, '_ReadRadio')
    GUICtrlSetOnEvent($Radio_3, '_ToggleRadio')
    GUISetOnEvent($GUI_EVENT_CLOSE, '_Exit', $GUI)
    GUISetState(@SW_SHOW, $GUI)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    While Sleep(1000)
    WEnd

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func _Exit()
    Exit
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _ReadRadio()
    If BitAND(GUICtrlRead($Radio_1), $GUI_CHECKED) Then ConsoleWrite('+> Radio 1 Checked' & @CRLF)
    If BitAND(GUICtrlRead($Radio_2), $GUI_CHECKED) Then ConsoleWrite('+> Radio 2 Checked' & @CRLF)
    If BitAND(GUICtrlRead($Radio_3), $GUI_CHECKED) Then ConsoleWrite('+> Radio 3 Checked' & @CRLF)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func _ToggleRadio()
    If $Radio3_IsChecked = False Then
    $Radio3_IsChecked = True
    Else
    $Radio3_IsChecked = False
    GUICtrlSetState($Radio_3, $GUI_UNCHECKED)
    EndIf
    EndFunc

    [/autoit]

    Das hier mal als kurzer Crash Kurs. Falls es noch fragen geben sollte, frag ruhig...

  • Happy Birthday chesstiger (15) und Xenobiologist (33)

    • Yjuq
    • 12. November 2012 um 12:37

    Alles Gute an unsere Augenkrebs Katzen^^

    Und Xenobiologist wünsche ich auch einen schönen Geburstag!

    Viel spaß ihr beiden :d

  • #interface stiftet für verwirrung...

    • Yjuq
    • 12. November 2012 um 12:05

    Aha :D

    Und was bewirken diese Anweisungen?
    >> Nehmen wir als Beispiel mal #forceref...


    #include gehört doch dann auch dazu? Soweit ich den Wikipedia Beitrag verstanden habe, macht #include genau das, was in Wikipedia beschrieben wird?

  • #interface stiftet für verwirrung...

    • Yjuq
    • 11. November 2012 um 23:48

    Guten Abend Community :D


    Ich habe gerade etwas in einer UDF entdeckt, was ich selber noch nicht kenne...
    Und zwar folgendes: #interface

    Schnell in die Hilfe geschaut, steht aber nicht drin...

    Nun habe ich spaßeshalber folgendes versucht:

    [autoit]

    #sjfia <asin.asopdio>
    #askd "kancon"

    [/autoit][autoit][/autoit][autoit]

    MsgBox(0, '', '')

    [/autoit]

    Es scheint nichts zu bewirken, aber wieso spuckt die SciTE kein Fehler aus?
    Bewirkt es doch was? Wenn ja, was denn?


    Nun ja, vielleicht könnt ihr mir ja helfen ein Licht ins dunke zu bringen :)

  • Hallo

    • Yjuq
    • 11. November 2012 um 15:45

    Marius oO
    Ich kenne jemanden der heißt genau so wie du, hat die gleichen Hobbys und ist genau so Alt...

    Zufall?

    Gehst du zur RSE???


    >> Nun ja, Herzlich willkommen ^^

  • Frage

    • Yjuq
    • 10. November 2012 um 13:48

    Überprüfen ob die Maustaste 2x schneller hintereinander gedrückt wurde... Wenn ja dann msgbox anzeigen...

  • Frage

    • Yjuq
    • 10. November 2012 um 13:40

    Hier hast du mal ein Beispiel:

    [autoit]

    #include <GUIConstants.au3>
    Opt('GUIOnEventMode', 1)

    [/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]

    $pfad = ;~ Pfad zu dem Bild

    [/autoit][autoit][/autoit][autoit]

    $GUI = GUICreate('', 800, 600)
    $Pic = GUICtrlCreatePic($pfad, 350, 250, 100, 100)
    GUISetOnEvent(-3, '_Exit', $GUI)
    GUICtrlSetOnEvent($Pic, '_MovePic')
    GUISetState(@SW_SHOW, $GUI)

    [/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]

    While Sleep(1000)
    WEnd

    [/autoit][autoit][/autoit][autoit][/autoit][autoit][/autoit][autoit]

    Func _Exit()
    Exit
    EndFunc

    [/autoit][autoit][/autoit][autoit]

    Func _MovePic()
    $cursor = GUIGetCursorInfo($GUI)
    While $cursor[2]
    $cursor = GUIGetCursorInfo($GUI)
    ControlMove($GUI, '', $cursor[4], $cursor[0], Default, 100, 100)
    WEnd
    EndFunc

    [/autoit]

    Musst du aber noch anpassen.

  • Click auf Label - unterscheiden zw. links- und rechtsklick

    • Yjuq
    • 10. November 2012 um 11:56

    Schau dir mal die Funktion

    [autoit]

    GUIGetCursorInfo()

    [/autoit]


    an. Die sollte dir bei dein Problem weiterhelfen.

  • >Orion<

    • Yjuq
    • 9. November 2012 um 14:54

    Herzlich willkommen :)

    Ich wünsche dir Viel Spaß im Forum ^^

  • Hotkey

    • Yjuq
    • 9. November 2012 um 14:42

    Veronesi hat einfach einen art Hotkey einem Fenster zugewiesen.
    Nur wenn das entsprechende Fenster aktiviert ist, wird auch die Funktion ausgeführt.

    GUISetAccelerators und das dazugehörige Array ist $aAccelKeys.
    Vielleicht schaust du dir einfach die Funktion in der Hilfe an.

  • Hotkey

    • Yjuq
    • 5. November 2012 um 14:47

    So, habe hier ein Beispiel:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    Opt('GUIOnEventMode', 1)
    Opt('GUICloseOnEsc', 0)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    HotKeySet('{Enter}', '_Enter')

    [/autoit] [autoit][/autoit] [autoit]

    Global Const $ClassNN_1 = 'Edit1'
    Global Const $ClassNN_2 = 'Edit2'

    [/autoit] [autoit][/autoit] [autoit]

    ConsoleWrite(@CRLF)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Global Const $GUI = GUICreate('Beispiel - GUI', 220, 70)
    GUICtrlCreateLabel('Input 1 ->', 10, 13, 50, 20)
    GUICtrlCreateLabel('Input 2 ->', 10, 43, 50, 20)
    Global Const $Input_1 = GUICtrlCreateInput('', 60, 10, 150, 20)
    Global Const $Input_2 = GUICtrlCreateInput('', 60, 40, 150, 20)
    GUISetOnEvent($GUI_EVENT_CLOSE, '_Exit', $GUI)
    GUISetState(@SW_SHOW, $GUI)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    While Sleep(1000)
    WEnd

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func _Exit()
    Exit
    EndFunc ;==>_Exit

    [/autoit] [autoit][/autoit] [autoit]

    Func _Enter()
    HotKeySet('{Enter}')
    If ControlGetFocus($GUI) = $ClassNN_1 Then
    ConsoleWrite('+ Fokus liegt im Fenster' & @CRLF & '> -> Input 1' & @CRLF & @CRLF)
    Send('{Enter}')
    ElseIf ControlGetFocus($GUI) = $ClassNN_2 Then
    ConsoleWrite('+ Fokus liegt im Fenster' & @CRLF & '> -> Input 2' & @CRLF & @CRLF)
    Send('{Enter}')
    Else
    ConsoleWrite('! Fokus liegt NICHT im Fenster' & @CRLF & @CRLF)
    Send('{Enter}')
    EndIf
    HotKeySet('{Enter}', '_Enter')
    EndFunc ;==>_Enter

    [/autoit]

    Falls es Fragen dazu geben sollte, immer nach hacken :D
    >> Falls wer eine elegantere Möglichkeit kennt :D Wäre es natürlich noch besser ^^

  • Hotkey

    • Yjuq
    • 5. November 2012 um 13:40

    Ne, der Quellcode ist in meine Signatur ^^

    >> Ich schreibe dir nachher ein Beispiel.
    Muss jetzt leider schon weg :)

  • Hotkey

    • Yjuq
    • 5. November 2012 um 13:21

    Ich habe das bisher immer mit _IsPressed und ControlGetFocus gelöst.

  • Lochkarten codieren

    • Yjuq
    • 1. November 2012 um 19:13

    Nö :D Ich hab in Post 6 genau so den BB-Code, wie ich es beschrieben habe:


    Und siehe da, es wird angezeigt :D

  • Make-Grafik hat Geburtstag!

    • Yjuq
    • 1. November 2012 um 16:56

    Und an den ganzen Nachzüglern auch ein Danke :)

  • GUICtrlCreatePic und Wine

    • Yjuq
    • 1. November 2012 um 16:16

    Ich verstehe deine Fragestellung nicht ganz oO

    Zitat

    und bekomme in Wine nichts außer dem Standard-Grau zu sehen.

    Meinst du, dass die .jpg Grafik nicht angezeigt wird?
    >> Dann hast du definitiv was im Pfad falsch...


    Zitat

    (msoobe.jpg ist im Programm-Unterordner ...\Examples\GUI)

    Ich würde es dann mit

    [autoit]

    @ScriptDir & "\Example\GUI\msoobe.jpg"

    [/autoit]


    versuchen...

  • Lochkarten codieren

    • Yjuq
    • 1. November 2012 um 12:55

    Ach sorry, das habe ich überlesen:
    "(wüsste gerne, wie man ein Bild direkt hier einfügt. Direkt einfügen ist zu groß?)"


  • Make-Grafik hat Geburtstag!

    • Yjuq
    • 1. November 2012 um 12:31

    Danke :D

  • Lochkarten codieren

    • Yjuq
    • 31. Oktober 2012 um 21:37

    Ja, dass was ja schon hier zusammen gekommen ist, finde ich gut ^^

    Freue mich auf jede weitere Antwort :D


    Bin daran sehr Interessiert, ich finde das dies ein Spannendes Theme ist.

  • Anwendung automatisch minimieren ?

    • Yjuq
    • 30. Oktober 2012 um 14:57

    Kurze Frage: Ist deine Frage schon beantwortet? Weil das Thread steht auf [gelöst] und ich sehe weder eine Antwort oder eine Lösung zu der Frage.


    Falls noch nicht gelöst:
    Sei so gut und stell dein ganzen Quelltext hinein. Aus dem Code-Schnipsel kann ich dir leider nicht 100%-tig weiterhelfen.

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™