Français
Forum

Klick sur Headerbuttons wird pas zuverlässig abgefangen

 

Jörg
Sellmeyer
allô Frank,
dans Deinem Beispiel Alle_Maustasten_abfangen.prf benutzt Du SetTimer 10 à Listviewvariablen trop füllen. Ist cela qui einzige Possibilité qui Mausklicks sur qui Spaltenbuttons sûrement trop erwischen?
sans ca va nämlich pas
je hab selber aussi viel rumprobiert mais la plus part du temps wird qui zweite gleiche Klick sur une Spaltenbutton im gleichen Contrôle pas plus registriert.
si zwischendurch dans cela Listview geklickt wird gehts wieder.
je hoffe, je konnte mich einigermaßen verständlich faire
ah oui - und dir à linke Bouton de la souris!

qui simplicité halber juste la fois Code en supplément.
Salut
Jörg
KompilierenMarqueSéparation
 $I Listview_Funktionen.inc
Declare LVDllHdl&
Declare bereich#,status&
Declare text$,x&,y&
Dim bereich#,320
LVDllHdl&=UseDll(Listview.dll)
Declare ListView1&

Proc SetListView1

    InitMessages(%hwnd)
    Declare tmptxt$
    tmptxt$=Spalte 1;Spalte 2;Spalte 3
    IColumn(ListView1&,Addr(tmptxt$),60,0)
    tmptxt$=Spalte 2
    IColumn(ListView1&,Addr(tmptxt$),60,0)
    tmptxt$=Spalte 3
    IColumn(ListView1&,Addr(tmptxt$),60,0)

    WhileLoop 0,6

        AddString(ListView1&,MkStr$(Test  + Format$(00,&Loop) + |,3))

    Wend

    ShowListView(ListView1&,1,1,Width(%hwnd) - 2,Height(%hwnd) - 200)

EndProc

Proc ExitLV

    CloseMessages(%hwnd)
    FreeDll LVDllHdl&

EndProc

UserMessages 16
WindowStyle $218
Window 100,100 - 620,520
ListView1&=CreateListView(%hwnd,%hinstance,0,14417146,-1,$21)
SetListView1
status&=Create(TEXT,%HWND,text$,8,364,600,72)

While 1

    WaitInput
    Case %umessage = 16:Break
    y&=GetControlParas(bereich#)

    If y&=2

        text$=Der rechte Mausknopf wurde in Spalte +Str$(Long(bereich#,4))+ / +Str$(Long(bereich#,8))+ gedrückt.

    ElseIf y&=1

        text$=Der linke Mausknopf wurde in Spalte +Str$(Long(bereich#,4))+ / +Str$(Long(bereich#,8))+ als Doppelklick gedrückt.

    ElseIf y&=3

        text$=Der linke Mausknopf wurde in Spalte +Str$(Long(bereich#,4))+ / +Str$(Long(bereich#,8))+ gedrückt.

    EndIf

    If y&<>0

        text$=text$+Dieses ereignete sich im Listview mit dem Handle +Str$(Long(bereich#,0))+.
        SetText status&,text$

    Endif

    x&=GetVar(2)

    If x&<>-1

        y&=GetVar(3)
        text$=Der rechte Mausknopf wurde über dem Spaltenbutton in Spalte +Str$(x&)+ gedrückt.
        text$=text$+Dieses ereignete sich im Listview mit dem Handle +Str$(y&)+.
        SetText status&,text$

    EndIf

    x&=GetVar(4)

    If x&<>-1

        y&=GetVar(5)
        text$=Der linke Mausknopf wurde über dem Spaltenbutton in Spalte +Str$(x&)+ gedrückt.
        text$=text$+Dieses ereignete sich im Listview mit dem Handle +Str$(y&)+.
        SetText status&,text$

    EndIf

Wend

ExitLV
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
10.03.2007  
 




Frank
Abbing
Du meinst, dass Profans WaitInput sans Minuteur pas durchbrochen wird chez einem Linksklick sur une Headerbutton...

ensuite probier simple la fois un: Usermessages $1401
et déjà wird Waitinput chez einem Linksklick des Headers durchbrochen.
Nachzulesen dans qui Anleitung (entier à droite dessus).

avec cela ersparst du sogar GetControlParas(), jedenfalls, si toi seulement Linksklicke intéresser. je versuche toujours, plusieurs Opportunités einzubauen...
 
10.03.2007  
 



Wofür steht $1401? Ist cela un Listview.Dll internal?
 
10.03.2007  
 




Frank
Abbing
alors bien... Auszug aus qui Listview.dll-Aider:

Listview.dll et Usermessages:

depuis Version 1.9 verschickt qui Listview.dll verschiedene Usermessages à cela Hauptprogramm, si bestimmte Ereignisse passer. à cette Stelle volonté cet Messages genannt et erklärt:

$1400: Ermittelt jeden Tastendruck dans einem beliebigen Listview.
uwParam = Listview-Handle
ulParam = Tastencode

$1401: Linke Bouton de la souris wurde sur einem Spaltenbutton gedrückt.
uwParam = Listview-Handle
ulParam = Spaltenindex (nullbasierend)

$1402: Anwender veux justement Spaltenbreite verändern.
uwParam = Listview-Handle
ulParam = Spaltenindex (nullbasierend)

$1403: Anwender hat Spaltenbreite modifié.
uwParam = Listview-Handle
ulParam = Spaltenindex (nullbasierend)
 
10.03.2007  
 



Ah, qui Utilisateur Messages habe je encore gar pas registriert. Hab réellement depuis Version 1.8 pas plus avec qui dll programmiert.
aujourd'hui habe je erstmal qui ganzen alten Leichen aus dem System geschmissen.
merci, cela hilft kollossal. peut-être devrait Du pour qui anderen Klicks aussi Utilisateur Messages nutzen. cet unterschiedlichen Abfragen pour qui Klicks (GetControlParas/GetVar) mener déjà la fois zur Verwirrung.
 
10.03.2007  
 




Jörg
Sellmeyer
Verdammt! maintenant passiert quelque chose comme!! là wird on beim écrivons rausgeschmissen - seulement weil je kurz quoi nachgesehen habe.


Ah, qui Utilisateur Messages habe je encore gar pas registriert. Hab réellement depuis Version 1.8 pas plus avec qui dll programmiert.
aujourd'hui habe je erstmal qui ganzen alten Leichen aus dem System geschmissen.
merci, cela hilft kollossal. peut-être devrait Du pour qui anderen Klicks aussi Utilisateur Messages nutzen. cet unterschiedlichen Abfragen pour qui Klicks (GetControlParas/GetVar) mener déjà la fois zur Verwirrung.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
10.03.2007  
 




Frank
Abbing

cet unterschiedlichen Abfragen pour qui Klicks (GetControlParas/GetVar) mener déjà la fois zur Verwirrung.


je halte es pour sinnvoll, plusieurs Arten pour une Solution zur Disposition gestellt trop bekommen. chacun technologie hat plan sa avant- et Nachteile.
c'est aussi passiert, dass je hinterher une besser Methode trouvé habe, un Problem trop lösen. Deswegen lasse je mais qui vieille Possibilité bestehen, déjà aus Kompatibilitätsgründen.
 
10.03.2007  
 




Jörg
Sellmeyer
c'est déjà bien sûr mais maintenant la hâte Du pour qui normalen Klicks im Listview GetControlParas et pour Headerklicks GetVar et (seulement pour à gauche) Utilisateur Messages.
si Du qui Utilisateur Messages aussi encore pour qui anderen Klicks einbaust ist qui Abfrage einfacher. alors z. B.:
$1401 = En-tête Link
$1402 = En-tête à droite
$1403 = normaler Linksklick
$1404 = normaler Droit
$1405= Double-cliquez sur

[offtopic] [/offtopic]
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
10.03.2007  
 




Frank
Abbing
j'ai oui rien degegen. cela nächte Update venez bestimmt .
 
10.03.2007  
 




Jörg
Sellmeyer
Frank Abbing
j'ai oui rien degegen. cela nächte Update venez bestimmt .


cela voulais je écouter!
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
10.03.2007  
 




Frank
Abbing

tu as Deinen Gewinn ausprobiert, stimmts? je hörs mir justement à - ist vraie zum piepen!


arrêt! qui Sprachausgabe entstammt pas meinem Gewinn. avec cela erzeugte Discours hört sich nämlich fürchterlich à (seulement SAPI) et cela Tool ist jadis wieder deinstalliert.
Hab mir Voice Reader de linguatec bestellt, cela hört sich um Längen besser à...
cela jedenfalls ist mon attitude.
 
10.03.2007  
 



@Hi Frank


cela jedenfalls ist mon attitude.


...mon aussi !
 
11.03.2007  
 




répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

3.048 Views

Untitledvor 0 min.
Jörg Sellmeyer11.06.2020
Ernst28.07.2016
H.Brill15.06.2014
Untitled06.06.2012

Themeninformationen



Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie