| |
|
|
| KompilierenMarkierenSeparierenSource wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Listbox mit Doppelklick und Rechtsklick
Doppel - und Rechtsclicklistbox, Autor: Dieter Zornow
Für nur Doppelclick braucht man kein zweites Getmessage mehr
und keine Variable einfach auf %lastmessage abfragen
Def GetSysColor(1) !USER32,GetSysColor
SETTRUECOLOR 1
DECLARE ENDE%,LISTBOX&,BUTTON&,text$,message%
WINDOWSTYLE 63
WINDOWTITLE Listbox with doubleclick and rightclick
WINDOW SUB(DIV(%MAXX,2),DIV(640,2)),SUB(DIV(%MAXY,2),DIV(500,2))-640,500
CLS GETSYSCOLOR(15)
USEFONT MS Sans Serif,13,0,0,0,0
SETDIALOGFONT 1
LISTBOX& = CREATELISTBOX(%HWND,LISTBOX,0013,0020,0402,0362)
BUTTON& = CREATEBUTTON(%HWND,Ende,410,410,70,25)
addstring(listbox&,Dieter)
addstring(listbox&,Zornow)
addstring(listbox&,Century Park Condominium)
addstring(listbox&,Viphavadi Rangsit Road, Soi 22)
addstring(listbox&,10900 Bangkok /Chatuchak)
addstring(listbox&,Thailand)
WHILENOT ENDE%
getmessage anstatt waitinput
If @EQU(%KEY,2)
LET ENDE%= 1
ELSEIF @EQU(%KEY,4)
ELSEIF GETFOCUS(LISTBOX&) LISTBOXABFRAGE
let message%=%lastmessage
if neq(message%,512)
getmessage
if equ(message%,515)
let text$=getstring$(listbox&,getcursel(listbox&))
endif
Locate 0,0
print Doppelklick: ,text$;
endif
if equ(Message%,516) erst links markieren dann rechts holen
let text$=getstring$(listbox&,getcursel(listbox&))
Locate 0,0
print Rechtsklick: ,text$;
endif
ELSEIF GETFOCUS(BUTTON&)
LET ENDE%= 1
ENDIF
WEND
end
|
|
|
| |
|
|