Italia
Fonte/ Codesnippets

Angeklicktes Ermitteln Item Listview Subitem

 
- Page 1 -



Jörg
Sellmeyer
Hiermit bekomme ich zwar die Zeile raus aber wie bekomme Io l' Index des angeklickten Items?
 $H Windows.ph
 $H commctrl.ph
Struct LVHitTestInfo = X&,Y&,flags&,Item&,SubItem&
Declare LVHTI#,LView&
Dim LVHTI#,LVHitTestInfo

Proc LV_HitTest

    Parameters  LV&,X%,Y%
    ~GetCursorPos(LVHTI#)
    ~ScreenToClient(LV&,LVHTI#)
    Return SendMessage(LV&,~LVM_HITTEST,0,LVHTI#)

EndProc

Cls
LView& = Create("GridBox",%hwnd,"Test;0;100;Test1;0;100",0,100,10,210,200)

WhileLoop 0,4

    AddString(LView&,"0 Test " + Str$(&Loop) + "|1 Test " + Str$(&Loop))

Wend

While 1

    WaitInput
    Print LV_HitTest(LView&,%mousex,%mousey)

Wend

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



« Dieser Beitrag wurde als Lösung gekennzeichnet. »


Jörg
Sellmeyer
Super! Das stand gar nicht in der Win32.hlp und ich dachte, man müßte das noch durch andere Strukturen auslesen.
So gehts jetzt:
 $H Windows.ph
 $H commctrl.ph
Struct LVHitTestInfo = X&,Y&,flags&,Item&,SubItem&
Declare LVHTI#,LView&,l%
Dim LVHTI#,LVHitTestInfo

Proc LV_HitTest

    Parameters  LV&,X%,Y%
    ~GetCursorPos(LVHTI#)
    ~ScreenToClient(LV&,LVHTI#)
    SendMessage(LV&,~LVM_SUBITEMHITTEST,0,LVHTI#)
    Return LVHTI#.SubItem&

EndProc

Cls
LView& = Create("GridBox",%hwnd,"Test 0;0;100;Test 1;0;100;Test 2;0;100;Test 3;0;100",0,200,10,410,200)

WhileLoop 0,4

    AddString(LView&,"0 Test " + Str$(&Loop) + "|1 Test " + Str$(&Loop) + "|2 Test " + Str$(&Loop) + "|3 Test " + Str$(&Loop))

Wend

While 1

    WaitInput
    Cls
    l% =  LV_HitTest(LView&,%mousex,%mousey)
    Case l% > -1:Print GetText$(LView&,LVHTI#.Item&,LVHTI#.SubItem&)

Wend

LVM_SUBITEMHITTEST
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
21.08.2008  
 




Frank
Abbing
LVM_SUBITEMHITTEST
 
21.08.2008  
 




Jörg
Sellmeyer
Super! Das stand gar nicht in der Win32.hlp und ich dachte, man müßte das noch durch andere Strukturen auslesen.
So gehts jetzt:
 $H Windows.ph
 $H commctrl.ph
Struct LVHitTestInfo = X&,Y&,flags&,Item&,SubItem&
Declare LVHTI#,LView&,l%
Dim LVHTI#,LVHitTestInfo

Proc LV_HitTest

    Parameters  LV&,X%,Y%
    ~GetCursorPos(LVHTI#)
    ~ScreenToClient(LV&,LVHTI#)
    SendMessage(LV&,~LVM_SUBITEMHITTEST,0,LVHTI#)
    Return LVHTI#.SubItem&

EndProc

Cls
LView& = Create("GridBox",%hwnd,"Test 0;0;100;Test 1;0;100;Test 2;0;100;Test 3;0;100",0,200,10,410,200)

WhileLoop 0,4

    AddString(LView&,"0 Test " + Str$(&Loop) + "|1 Test " + Str$(&Loop) + "|2 Test " + Str$(&Loop) + "|3 Test " + Str$(&Loop))

Wend

While 1

    WaitInput
    Cls
    l% =  LV_HitTest(LView&,%mousex,%mousey)
    Case l% > -1:Print GetText$(LView&,LVHTI#.Item&,LVHTI#.SubItem&)

Wend

LVM_SUBITEMHITTEST
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
21.08.2008  
 




Frank
Abbing
Die Win32.hlp ist in manchen Bereichen unvollständig. Im Zweifelsfall doch noch bei MSDN nachsehen.
 
22.08.2008  
 



Zum Quelltext


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

8.964 Views

Untitledvor 0 min.
Gast.081525.08.2024
Member 862464113.05.2024
Axel Berse18.02.2019
rquindt23.03.2018
Di più...

Themeninformationen

Dieses Thema hat 2 subscriber:

Frank Abbing (2x)
Jörg Sellmeyer (2x)


Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie