gerade konnten mir RSBasic und Bisonte helfen, eine Doppelklickabfrage zu implementieren, da haut's mir schon wieder einen Knüppel zwischen die Beine:
mit o. g. Doppelklickabfrage wird in einem Jahreskalender das Datum gepickt, ungefähr so:
Code: Alles auswählen
Procedure DoppelKlickAbfrage(hWnd, uMsg, wParam, lParam)
Select uMsg
Case #WM_LBUTTONDBLCLK
gn = EventGadget()
; einige Berechnungen, um von einer TextGadgetnummer auf das Datum zu schliessen
; am Ende dann prüfen, ob Tag im Bereich 1...Ultimo liegt
If gn >= 0 And gn <= u
;Datumstring zusammenbauen
x$ = Right("0"+Str(gn),2) + "." + Right("0"+Str(m),2) + "." + Str(jahr)
; ins Clipboard
SetClipboardText(x$)
; anzeigen
MessageRequester("Information", x$, #PB_MessageRequester_Ok)
EndIf
EndSelect
ProcedureReturn CallWindowProc_(DoppelKlickAbfrage, hWnd, uMsg, wParam, lParam)
EndProcedure
Solange der Messagerequester angezeigt wird, kann ich das Datum per {RechtKlick -einfügen} in eine Textdatei einfügen. Sobald der Messagerequester geschlossen wird, wird nur noch das Zeichen, auf das ich den Doppelklick gemacht habe, aus dem Clipboard eingefügt.
Ohne den Requester funktioniert es überhaupt nicht, dann wird nur das Zeichen, auf das ich den Doppelklick gemacht habe, aus dem Clipboard eingefügt. Warum ist der Datumsstring verschwunden? Und wie kann man das Verschwinden verhindern?