Beliebiger Klick innerhalb einer Gui, (aber kein steuerelement), soll ListView abwählen

Post a reply


In an effort to prevent automatic submissions, we require that you complete the following challenge.
Smilies
:D :) ;) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :!: :?: :idea: :| :mrgreen: :geek: :ugeek: :arrow: :angel: :clap: :crazy: :eh: :lolno: :problem: :shh: :shifty: :sick: :silent: :think: :thumbup: :thumbdown: :salute: :wave: :wtf: :yawn: :facepalm: :bravo: :dance: :beard: :morebeard: :xmas: :HeHe: :trollface: :cookie: :rainbow: :monkeysee: :monkeysay: :happybday: :headwall: :offtopic: :superhappy: :terms: :beer:
View more smilies

BBCode is ON
[img] is OFF
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Beliebiger Klick innerhalb einer Gui, (aber kein steuerelement), soll ListView abwählen

Re: Beliebiger Klick innerhalb einer Gui, (aber kein steuerelement), soll ListView abwählen

Post by KHA » 09 Sep 2019, 11:47

Danke für die Aufklärung.

Re: Beliebiger Klick innerhalb einer Gui, (aber kein steuerelement), soll ListView abwählen

Post by just me » 09 Sep 2019, 02:39

Moin,

nur zur Klarstellung:

0x0203 ist die numerische Konstante für WM_LBUTTONDBLCLK (Doppelklick). Das normale WM_LBUTTONDOWN Ereignis ist 0x0201.

Die WM_LBUTTONDOWN Funktion kann für Deine Zwecke so verkürzt werden:

Code: Select all

WM_LBUTTONDOWN()
{
	If !A_GuiControl ; Klick auf den Fensterhintergrund
		LV_Modify(0, "-Select")
}
Das Return hinter der den Funktionskörper abschließenden Blockklammer (}) ist sinnlos.

Re: Beliebiger Klick innerhalb einer Gui, (aber kein steuerelement), soll ListView abwählen

Post by KHA » 08 Sep 2019, 16:32

Habe mehr oder weniger per Zufall herausgefunden:

Code: Select all

Gui, New
Gui, Add, Text,, Das ist mein ListView
Gui, Add, Listview, w500 BackgroundWhite Grid, 1|2|3

Loop, 3
LV_Add("", "Test", "Test", "Test")

Gui, Add, Button, Default w80, OK

Gui, Show,,TEST123
OnMessage(0x203, "WM_LBUTTONDOWN")
Return

WM_LBUTTONDOWN(wParam, lParam)
{
    X := lParam & 0xFFFF
    Y := lParam >> 16
if !A_GuiControl
LV_Modify(0, "-Select")
}Return




/*
#IfWinActive TEST123
~LButton::
LV_Modify(0, "-Select")
Return
#IfWinActive 
*/
ButtonOK:
Reihennummer = 0  
Loop
{
    Reihennummer := LV_GetNext(Reihennummer) 
    if not Reihennummer
        break
    LV_GetText(Text, Reihennummer)
    MsgBox Die nächste ausgewählte Reihe ist #%Reihennummer%, die im ersten Feld "%Text%" enthält.
}
Return

Guiclose:
ExitApp

Beliebiger Klick innerhalb einer Gui, (aber kein steuerelement), soll ListView abwählen

Post by KHA » 08 Sep 2019, 14:11

Guten Abend,
Ein klick innerhalb einer GUI an beliebiger stelle, soll alle Listview einträge abwählen.
Meine Idee:

Code: Select all

#IfWinActive TEST123
~LButton::
LV_Modify(0, "-Select")
Return
#IfWinActive
funktioniert zwar, aber mein Button hat danach leider auch kein Funktion.

Code: Select all

Gui, New
Gui, Add, Text,, Das ist mein ListView
Gui, Add, Listview, w500 BackgroundWhite Grid, 1|2|3

Loop, 3
LV_Add("", "Test", "Test", "Test")

Gui, Add, Button, Default w80, OK

Gui, Show,,TEST123
Return

/*
#IfWinActive TEST123
~LButton::
LV_Modify(0, "-Select")
Return
#IfWinActive 
*/
ButtonOK:
Reihennummer = 0  
Loop
{
    Reihennummer := LV_GetNext(Reihennummer) 
    if not Reihennummer
        break
    LV_GetText(Text, Reihennummer)
    MsgBox Die nächste ausgewählte Reihe ist #%Reihennummer%, die im ersten Feld "%Text%" enthält.
}
Return

Guiclose:
ExitApp


Danke im Voraus.
LG

Top