| |
|
|
Jörg Sellmeyer | ¡Hola Franco, In Deinem Ejemplo Alle_Maustasten_abfangen.prf benutzt Usted SetTimer 10 a Listviewvariablen a füllen. Ist el el einzige Möglichkeit el Mausklicks en el Spaltenbuttons sicher a erwischen? Ohne es nämlich no Yo También se viel rumprobiert aber meistens se el zweite gleiche Clic en una Spaltenbutton en el gleichen Control no mehr registriert. Wenn zwischendurch en el Listview geklickt se gehts otra vez. Yo hoffe, Yo podría mich einigermaßen verständlich hacer Ach sí - lo va a linke Botón del ratón!
Der Einfachheit halber igual veces Code dazu. Saludo Jörg KompilierenMarcaSeparación $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 | ¿Quieres decir que, dass Profans WaitInput sin Temporizador no durchbrochen se en una Linksklick en una Headerbutton...
Dann probier simplemente veces una: Usermessages $1401 Und ya se Waitinput en una Linksklick des Headers durchbrochen. Nachzulesen en el Anleitung (bastante rechts oben).
Damit ersparst du incluso GetControlParas(), jedenfalls, si dich sólo Linksklicke interés. Yo versuche siempre, mehrere Möglichkeiten einzubauen... |
|
|
| |
|
|
|
| Wofür es $1401? Ist el una Listview.Dll internal? |
|
|
| |
|
|
|
Frank Abbing | Also bien... Auszug de el Listview.dll-Ayuda:
Listview.dll y Usermessages:
Seit Versión 1.9 verschickt el Listview.dll verschiedene Usermessages a el Hauptprogramm, si cierto Ereignisse passieren. An dieser Punto voluntad esta Messages genannt y erklärt:
$1400: Ermittelt cada Tastendruck en un beliebigen Listview. uwParam = Listview-Handle ulParam = Tastencode
$1401: Linke Botón del ratón wurde en una Spaltenbutton gedrückt. uwParam = Listview-Handle ulParam = Spaltenindex (nullbasierend)
$1402: Anwender voluntad gerade Spaltenbreite verändern. uwParam = Listview-Handle ulParam = Spaltenindex (nullbasierend)
$1403: Anwender ha Spaltenbreite verändert. uwParam = Listview-Handle ulParam = Spaltenindex (nullbasierend) |
|
|
| |
|
|
|
| Ah, el Mensajes del usuario Todavía nada registriert. Hab tatsächlich seit Versión 1.8 no mehr con el dll programmiert. Heute Yo primero el ganzen alten Leichen de el Sistema geschmissen. Gracias, el hilft kollossal. Tal vez solltest Usted para el otro Klicks auch Mensajes del usuario nutzen. Diese unterschiedlichen Abfragen para el Klicks (GetControlParas/GetVar) führen ya veces a Verwirrung. |
|
|
| |
|
|
|
Jörg Sellmeyer | Verdammt! Jetzt passiert algo como!! Como se uno beim Carta rausgeschmissen - sólo porque Yo kurz qué nachgesehen habe.
Ah, el Mensajes del usuario Todavía nada registriert. Hab tatsächlich seit Versión 1.8 no mehr con el dll programmiert. Heute Yo primero el ganzen alten Leichen de el Sistema geschmissen. Gracias, el hilft kollossal. Tal vez solltest Usted para el otro Klicks auch Mensajes del usuario nutzen. Diese unterschiedlichen Abfragen para el Klicks (GetControlParas/GetVar) führen ya veces a Verwirrung. |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 10.03.2007 ▲ |
|
|
|
|
Frank Abbing |
Diese unterschiedlichen Abfragen para el Klicks (GetControlParas/GetVar) führen ya veces a Verwirrung.
Yo halte lo para sinnvoll, mehrere Arten para una solución disponible gestellt a bekommen. Jede Technik ha eben seine Vor- y Nachteile. Es auch passiert, dass Yo hinterher una mejor Método gefunden habe, una Problema a lösen. Deswegen lasse Yo aber el alte Möglichkeit bestehen, ya de Kompatibilitätsgründen. |
|
|
| |
|
|
|
Jörg Sellmeyer | Es ya klar aber ahora hast Usted para el normalen Klicks en el Listview GetControlParas y para Headerklicks GetVar y (sólo para links) Mensajes del usuario. Si usted el Mensajes del usuario auch todavía para el otro Klicks einbaust Es el Abfrage einfacher. Also z. B.: $1401 = Encabezamiento Link $1402 = Encabezamiento Rechts $1403 = normaler Linksklick $1404 = normaler Rechtsklick $1405= Haga doble clic en
|
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 10.03.2007 ▲ |
|
|
|
|
Frank Abbing | Yo habe sí nichts degegen. Das nächte Actualización kommt determinado . |
|
|
| |
|
|
|
Jörg Sellmeyer | Frank Abbing
Yo habe sí nichts degegen. Das nächte Actualización kommt determinado .
Das Yo quería hören! |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 10.03.2007 ▲ |
|
|
|
|
Frank Abbing |
Usted hast Su Gewinn ausprobiert, stimmts? Yo hörs me gerade a - es echt para piepen!
Halt! El Sprachausgabe entstammt no mi Gewinn. Damit erzeugte Lingua hört se nämlich fürchterlich a (sólo SAPI) y el Tool es längst otra vez deinstalliert. Hab me Voice Reader de linguatec bestellt, el hört son Längen mejor a... Das jedenfalls es mi Meinung. |
|
|
| |
|
|
|
| @Hi Franco
Das jedenfalls es mi Meinung.
...mi auch ! |
|
|
| |
|
|