Das Forentreffen 2018 findet am 20./21. April in Dresden statt. Weitere Infos hier
Anmeldungen zum Forentreffen 2018 sind auf der Anmeldeseite möglich
Zur Homepage des Deutschsprachige Xbase-Entwickler e. V.
Xbase++-Wiki des Deutschsprachige Xbase-Entwickler e. V.

XClass++: Tooltip für eine Spalte im dsXbrowse

Moderator: Moderatoren

Antworten
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 13894
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Kontaktdaten:

XClass++: Tooltip für eine Spalte im dsXbrowse

Beitrag von Martin Altmann » Fr, 30. Mai 2008 21:46

Hallo allerseits,
nachdem Olaf mir ja schon so super geholfen hat (gut, dass ich nicht der einzige hier bin, der XClass++ nutzt), habe ich eine weitere Frage zu dem Thema dsXbrowse.
Ich habe in einer Spalte die Nationalität stehen - als zwei Buchstaben!
Ich möchte für die Werte in der Spalte als Tooltip die entsprechende Nationalität im Klartext anzeigen lassen.
Anbei mein Code:

Code: Alles auswählen

...
aFields := { "NATIONAL", "PLZ", "ORT" }
aHead := { "Nationalität", "Postleitzahl", "Ort" }

aCol := ::oBrowse:addColumnDB(aHead, aFields)

aCol[1]:CellEditType( CELL_SLE )
aCol[1]:Picture := "@!"
aCol[1]:SelectBlock := {|o, lButton| SelectNat(self, o, @lButton)}
aCol[1]:PostValidate := {|oB,oC,oE| V_CheckNat(self, oB, oE, .f., "" )}
aCol[1]:Tooltip({|oB,oC| CheckNat(oB, oC )})

aCol[3]:CellEditType( CELL_SLE )
aCol[3]:Picture := "!XXXXXXXXXXXXXXXXXXXXXXXXXXXXX"

....

Function CheckNat(oBrowse, oCell)
LOCAL cVal, nI, cText

cVal := alltrim(oBrowse:getValue(oCell[1],oCell[2]))
if empty(cVal) 
	cText := "Geben Sie die Nationalität an!"
else
nI := ascan( MEMVAR->aNationen, { |a| a[ 1 ] == cVal } )
	if nI == 0
		cText := "Geben Sie eine gültige Nationalität an!"
	else
		cText := MEMVAR->aNationen[ nI, 2 ]
	endif
endif
RETURN cText
Funktioniert - gibt aber Anzeigeprobleme!!
Der Bereich, der durch den Tooltip überdeckt wird, bleibt leer, nachdem der Tooltip weg ist. Nach einigem wilden hin- und herfahren kommt der Zellinhalt wieder zum Vorschein.
Ist das bei Euch auch so und müsste ich das dann an Dieter melden?
Oder habe ich irgendwo noch einen Denkfehler?

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: http://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: http://meldungen.altem.de/

Mitglied der XUG Osnabrück
stellv. Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 13894
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Kontaktdaten:

Beitrag von Martin Altmann » Fr, 30. Mai 2008 22:35

Nachtrag: Ich habe jetzt auch mal ein oBrowse:Repaint() mit ans Ende der Funktion CheckNat gesetzt.
Damit wird es zwar etwas besser, dafür sehr ruckelig.
Und die Zellinhalte werde nicht neu geschrieben, wenn ich die Spalte verlasse, sondern nur, wenn ich innerhalb der Spalte die Zeile wechsele.
Wobei es da noch Probleme gibt, wenn ich auf der aktiven (nicht im Editmodus) Zelle stehe - da wird gar kein Tooltip angezeigt...

Naja, bin jetzt erstmal weg - bis in zwei Wochen...

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: http://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: http://meldungen.altem.de/

Mitglied der XUG Osnabrück
stellv. Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 10835
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Beitrag von AUGE_OHR » Sa, 31. Mai 2008 1:53

hi,
Martin Altmann hat geschrieben: Nachtrag: Ich habe jetzt auch mal ein oBrowse:Repaint() mit ans Ende der Funktion CheckNat gesetzt.
Damit wird es zwar etwas besser, dafür sehr ruckelig.
auwei ... Tooltip auf einem Browse ... damit habe ich auch mal gekämpft.

... ich hoffe das dein "Tip" nicht aus einer DBF kommt ...
Martin Altmann hat geschrieben: Naja, bin jetzt erstmal weg - bis in zwei Wochen...
Urlaub ? ... und was ist mit EM ?

... dann mal gutes Wetter und viel Spass.
gruss by OHR
Jimmy

stevie
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 417
Registriert: Mo, 17. Sep 2007 18:20
Wohnort: Senftenberg
Kontaktdaten:

Re: XClass++: Tooltip für eine Spalte im dsXbrowse

Beitrag von stevie » Mo, 02. Jun 2008 7:23

Martin Altmann hat geschrieben: Anbei mein Code:

Code: Alles auswählen

aCol[1]:Tooltip({|oB,oC| CheckNat(oB, oC )})

aCol[3]:CellEditType( CELL_SLE )
aCol[3]:Picture := "!XXXXXXXXXXXXXXXXXXXXXXXXXXXXX"

....

Function CheckNat(oBrowse, oCell)
LOCAL cVal, nI, cText

cVal := alltrim(oBrowse:getValue(oCell[1],oCell[2]))
if empty(cVal) 
	cText := "Geben Sie die Nationalität an!"
else
nI := ascan( MEMVAR->aNationen, { |a| a[ 1 ] == cVal } )
	if nI == 0
		cText := "Geben Sie eine gültige Nationalität an!"
	else
		cText := MEMVAR->aNationen[ nI, 2 ]
	endif
endif
RETURN cText
Funktioniert - gibt aber Anzeigeprobleme!!
Der Bereich, der durch den Tooltip überdeckt wird, bleibt leer, nachdem der Tooltip weg ist. Nach einigem wilden hin- und herfahren kommt der Zellinhalt wieder zum Vorschein.
Ist das bei Euch auch so und müsste ich das dann an Dieter melden?
Oder habe ich irgendwo noch einen Denkfehler?

Viele Grüße,
Martin
Ich verstehe zwar nich, worans bei dir liegt, aber ich hab den Tooltipp bei meinem dsxbrowse auch so laufen, aber keine Probleme.

Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 13894
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Kontaktdaten:

Beitrag von Martin Altmann » Sa, 14. Jun 2008 21:33

Hallo Stevie,
keine Probleme?
Was passiert denn, wenn Du auf dem ersten bzw. zweiten Eintrag (oder auch dem letzten bzw. vorletzten) in der Spalte stehst und den Mauszeiger auf den nächsten (bzw. vorherigen) Eintrag bewegst?
Was passiert denn, wenn Du die Spalte in eine Spalte ohne Tooltips verlässt (Spalte A hat Tooltips, Spalte B nicht. Du stehst auf einem Eintrag in Spalte A und bekommst den Tooltip angezeigt und gehst mit der Maus waagerecht rüber in die Spalte B)?
Wenn Du mit den beiden Punkten kein Problem hast: Welche Versionen von XClass++ und Xbase++ nutzt Du denn?

Viele Grüße,
Martin

@Jimmy: Es gab ja Fernseher vor Ort (mit Videotext).
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: http://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: http://meldungen.altem.de/

Mitglied der XUG Osnabrück
stellv. Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

stevie
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 417
Registriert: Mo, 17. Sep 2007 18:20
Wohnort: Senftenberg
Kontaktdaten:

Beitrag von stevie » Mo, 16. Jun 2008 8:10

Martin Altmann hat geschrieben:Hallo Stevie,
keine Probleme?
Was passiert denn, wenn Du auf dem ersten bzw. zweiten Eintrag (oder auch dem letzten bzw. vorletzten) in der Spalte stehst und den Mauszeiger auf den nächsten (bzw. vorherigen) Eintrag bewegst?

Was passiert denn, wenn Du die Spalte in eine Spalte ohne Tooltips verlässt (Spalte A hat Tooltips, Spalte B nicht. Du stehst auf einem Eintrag in Spalte A und bekommst den Tooltip angezeigt und gehst mit der Maus waagerecht rüber in die Spalte B)?
Wenn Du mit den beiden Punkten kein Problem hast: Welche Versionen von XClass++ und Xbase++ nutzt Du denn?
Ich kriege nur den Tooltipp von der Zelle nicht angezeigt auf der der Cursor steht, ansonsten wird immer ordentlich und in allen deinen Fällen der Tooltipp aus und wieder eingeblendet.
Ich benutze zurzeit Xbase 1.9.331 mit Xclass 4.3.

Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 13894
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Kontaktdaten:

Beitrag von Martin Altmann » Mo, 16. Jun 2008 8:21

Hallo Stevie,
ah! Ich benutze derzeit noch 4.1 Build 176.
Aber wenn Du bei Dir den Tooltip der aktiven Zelle nicht angezeigt bekommst, funktioniert es da ja noch immer nicht so richtig...

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: http://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: http://meldungen.altem.de/

Mitglied der XUG Osnabrück
stellv. Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

stevie
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 417
Registriert: Mo, 17. Sep 2007 18:20
Wohnort: Senftenberg
Kontaktdaten:

Beitrag von stevie » Mo, 16. Jun 2008 8:28

Martin Altmann hat geschrieben:Hallo Stevie,
ah! Ich benutze derzeit noch 4.1 Build 176.
Aber wenn Du bei Dir den Tooltip der aktiven Zelle nicht angezeigt bekommst, funktioniert es da ja noch immer nicht so richtig...

Viele Grüße,
Martin
Das stört uns aber nicht.
Da das nur eine einzige Spalte ziemlich weit hinten ist, die sowieso niemand anklickt, stört das nicht wirklich.
Viele Grüße
Stevie

Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 13894
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Kontaktdaten:

Beitrag von Martin Altmann » Mo, 16. Jun 2008 10:17

Hallo Stevie,
OK, aber micht stört das, da der Nutzer ja sehen können soll, welche Nationalität sich (z.B.) hinter dem Kürzel DZ verbirgt...
Aber wenn die anderen groben Schnitzer bereits beseitigt wurden, hoffe ich mal, dass auch das beizeiten noch korrigiert werden wird.

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: http://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: http://meldungen.altem.de/

Mitglied der XUG Osnabrück
stellv. Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

stevie
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 417
Registriert: Mo, 17. Sep 2007 18:20
Wohnort: Senftenberg
Kontaktdaten:

Beitrag von stevie » Mo, 16. Jun 2008 12:09

Martin Altmann hat geschrieben:Hallo Stevie,
OK, aber micht stört das, da der Nutzer ja sehen können soll, welche Nationalität sich (z.B.) hinter dem Kürzel DZ verbirgt...
Aber wenn die anderen groben Schnitzer bereits beseitigt wurden, hoffe ich mal, dass auch das beizeiten noch korrigiert werden wird.

Viele Grüße,
Martin
man weiß ja nich, wie das xclass 4.4 ist. Wir habens zwar, aber die xbase preview scheint mir noch zu viele Fehler zu haben.
Viele Grüße
Stevie

Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 13894
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Kontaktdaten:

Beitrag von Martin Altmann » Mi, 25. Jun 2008 8:26

Hallo Stevie,
ich habe Marcus mal eine Mail geschrieben und ihn darauf hingewiesen, dass der Tooltip bei der aktiven Zelle nicht angezeigt wird...

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: http://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: http://meldungen.altem.de/

Mitglied der XUG Osnabrück
stellv. Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

Antworten