Allgemeine Fragen zur PROFAN Programmierung
Views (Heute): 242936 (4372)
  Suchen
 Zurück zur Übersicht
 AutorThema: ListView: EditLabel
Sebastian Sprenger
Datum:30.05.02 22:35 Antwortenals Email verschicken (prof.chaos@netcologne.de) 


Hallo,
wenn man in einem ListView kurz die Maustaste gedrückt hält und wieder losläßt, erscheint ja ein kleines EditControl, in dem man den Zelleninhalt ändern kann.
Die Änderung muss das Programm dann allerdings selbst übernehmen.
Das Problem ist:
Woher weiss ich, dass gerade so ein Control erschienen ist, in welcher Zeile es ist und dass es wieder verschwindet?


Philipp Sternberg
Datum:31.05.02 11:54 Antwortenals Email verschicken (ps@burghardt-ib.de) 


Eigentlich solltest du so etwas über wm_Notify mitbekommen.
Problem ist nur, dass die Auswertung von wm_Notify unter Profan sehr zu wünschen übrig lässt. Ich hab auch schon vor dem Problem gestanden und leider keine Lösung gefunden


Sebastian Sprenger
Datum: 31.05.02 15:10 Antwortenals Email verschicken (prof.chaos@netcologne.de) 


Naja, zuerst dachte ich an LVN_BEGINLABELEDIT.
Dieser Code hat die Nummer -105. Glaube ich. %notifycode glaubt es jedenfalls nicht.
Inzwischen habe ich aber ne Lösung gefunden:

declare a$,a&,a#,y%
proc CheckEdit
  parameters lvm&
  a&=sendmessage(lvm&,$1018,0,0) ' LVM_GETEDITCONTROL
  casenot a&:return
  y%=sendmessage(lvm&,$1004,0,0) ' LVM_GETITEMCOUNT
  while y%
    dec y%
    case sendmessage(lvm&,$102C,y%,1):break ' LVM_GETITEMSTATE
  endwhile
  while getfocus(a&)
    a$=gettext$(a&)
    waitinput
  endwhile
  dim a#,36
  long a#,0=1
  long a#,4=y%
  long a#,8=0
  a&=addr(a$)
  long a#,20=a&
  long a#,24=len(a$)
  sendmessage(lvm&,$1006,0,a#)
  dispose a#
endproc



 Zurück zur Übersicht