XbpBrowse Zeilencursor lbClick [erledigt]

Grafische Primitive, XbaseParts und Darstellungsfragen allgemein.

Moderator: Moderatoren

Antworten
Benutzeravatar
Werner_Bayern
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2121
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern
Hat sich bedankt: 30 Mal
Danksagung erhalten: 72 Mal

XbpBrowse Zeilencursor lbClick [erledigt]

Beitrag von Werner_Bayern »

Kann man im Zeilencursormode

Code: Alles auswählen

oBrowse:cursorMode := XBPBRW_CURSOR_ROW
noch feststellen, auf welche Spalte in der Zeile geklickt wurde?
Vermutlich nicht, ich bekomme weder auf dem Browse noch auf dem Column ein lbClick-Ereignis.
Zuletzt geändert von Werner_Bayern am Fr, 27. Mär 2015 11:55, insgesamt 1-mal geändert.
es grüßt

Werner

<when the music is over, turn off the lights!>
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Re: XbpBrowse Zeilencursor lbClick

Beitrag von AUGE_OHR »

Werner_Bayern hat geschrieben:Kann man im Zeilencursormode

Code: Alles auswählen

oBrowse:cursorMode := XBPBRW_CURSOR_ROW
noch feststellen, auf welche Spalte in der Zeile geklickt wurde?
Vermutlich nicht, ich bekomme weder auf dem Browse noch auf dem Column ein lbClick-Ereignis.
Nein ... wenn du eine einfache Lösung suchst.
JA ... bei Ownerdraw ist der 6th Parameter von aInfo -> oCol -> XBP_DRAWINFO_COLUMN
jetzt musst du "nur" noch auf Cell Ebene den o:LbDown abfangen z.b. für ein DragDrop
gruss by OHR
Jimmy
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9358
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 101 Mal
Danksagung erhalten: 361 Mal
Kontaktdaten:

Re: XbpBrowse Zeilencursor lbClick

Beitrag von Tom »

Das sollte im Eventhandler gehen (oBrowse muss im Handler bekannt sein):

Code: Alles auswählen

IF nEvent = xbeM_LbDown .and. oXbp:IsDerivedFrom('XbpCellGroup')
  FOR i := 1 to oBrowse:ColCount
    IF oBrowse:GetColumn(i):DataArea == oXbp
      * das ist die Spalte!
      * oXbp:CellFromPos(mp1) würde auch noch die Zelle/Zeile liefern
  
Ins Blaue getippt. Sollte aber so oder so ähnlich funzen.
Herzlich,
Tom
Benutzeravatar
Werner_Bayern
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2121
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern
Hat sich bedankt: 30 Mal
Danksagung erhalten: 72 Mal

Re: XbpBrowse Zeilencursor lbClick

Beitrag von Werner_Bayern »

Servus Tom,
herzlichen Dank, schulde Dir ein :occasion5:, einzulösen in Potsdam. :wink:

Code: Alles auswählen

elseif nEvent = xbeM_LbDown .and. oXbp:IsDerivedFrom('XbpCellGroup') .and. oBrowse:GetColumn(1):DataArea == oXbp
(Mir geht es nur darum, ob auf die 1. Spalte geklickt wurde)

Man muss dann aber mit oBrowse:getData() arbeiten, weil zu diesem Zeitpunkt die Datenquelle offensichtlich noch nicht synchronisiert ist.
es grüßt

Werner

<when the music is over, turn off the lights!>
Antworten