DCBROWSECOL und DATATOOLTIP

Moderator: Moderatoren

Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21164
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

DCBROWSECOL und DATATOOLTIP

Beitrag von Manfred »

Hi,
ich habe ein DCBROWSE auf ein Array. Es gibt dort eine Spalte, die immer mal wieder schmaler als der eigentlich Inhalt ist. Also erinnerte ich mich, dass es ja DATATOOLTIP {|| .T.} gibt. Das soll ja laut Anleitung per Mouseover den Inhalt anzeigen, wenn er zu schmal für die Spaltenbreite ist. Das klappt aber nicht. Ich habe es bisher auf eine Tabelle angewendet und meine, das es dort geklappt hat. leider scheint es da auch nicht mehr zu wollen. Das mit dem getrennten Thread habe ich schon woanders hier gelesen, aber ist es da wirklich?. Bzw, warum baut Roger sowas ein, wenn es nicht wirklich so einfach klappt? Hat jemand einen Tipp zur Hand?
Die anderen TOOLTIPS in dem Fenster (PushButton) klappen. Dort wird der jeweilige Text angezeigt.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Tom »

Hallo, Manfred.

Das hat seinerzeit der gute Michl Rudrich erfunden und Roger hat's direkt eingebaut. So richtig sicher hat die Standardvariante nie funktioniert. Ich verwende DATATOOLTIP deshalb nur mit der zusätzlichen Option TIPBLOCK. Wenn man Arrays im Browser hat, kann man den ersten Parameter des Blocks verwenden, um sich die Daten zu holen:

Code: Alles auswählen

DCBROWSECOL ELEMENT 1 HEADER 'xy' PARENT oBrowse DATATOOLTIP {||.T.} TIPBLOCK {|n|Var2Char(DC_GetColArray(n,oBrowse))}
Bei Tabellen muss man höllisch aufpassen, denn DATATOOLTIP verändert dort die Zeigerposition, wenn man die Datenquelle im Tipblock referenziert. Deshalb ist in solchen Fällen anzuraten, die Tabelle(n) für den Tipblock abermals zu öffnen.

Wie gesagt, das war nie wirklich sicher. Die Variante, die ich oben gezeigt habe, funktioniert aber, und man kann im Tipblock dann auch noch weitere Daten sammeln.
Herzlich,
Tom
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21164
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Manfred »

Hi Tom,
ich habe jetzt etliche Varianten ausprobiert. Habe mir auch die Beispielcodes von Roger angeschaut und daraus was kopiert. Leider ohne Erfolg. Irgenwas mache ich da wohl falsch.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21164
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Manfred »

irgendwas passt da nicht. Ich habe mal in Datatooltip und Tipblock eine Funktion eingebaut und mit dem Debugger macl beobachtet. Die werden überhaupt nicht aufgerufen. Wie soll denn da DATATOOLTIP überhaupt wissen, ob es nun .T. oder .F. ist?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Tom »

Zeig mal ein Beispiel und/oder ein Stück Code. Bei mir funzt das.
Herzlich,
Tom
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21164
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Manfred »

Code: Alles auswählen

@ 15,5 DCBROWSE oDialogZusatz:oBrowseTagesDienste;
                     DATA oDialogZusatz:aTagesdienste;
                     EDIT xbeBRW_ItemSelected MODE DCGUI_BROWSE_EDITDOWN;
                HEADLINES 2;
              NOSOFTTRACK;
                   PARENT oDialogZusatz:oRahmenBrowseTagesdienste;
                  POINTER nPos;
                  PREEVAL {|| oDialogZusatz:oBrowseTagesDienste:headerRbDown := {|aMousePos, nColPos, self| MausImKopf(nColPos,oDialogZusatz,{2,3,4,6,7})}};
                     SIZE DCGUI_PARENTWIDTH-10,DCGUI_PARENTHEIGHT - 30 - oDialogZusatz:nPbHoehe;
                  TABSTOP
DCBROWSECOL ELEMENT BEMERKUNG;
                   DATATOOLTIP {|| .T.} TIPBLOCK{|nPos| oDialogZusatz:aTagesdienste[nPos,BEMERKUNG]};
                        HEADER "Bemerkung";
                        PARENT oDialogZusatz:oBrowseTagesdienste;
                       PROTECT {|| .T.};
                         WIDTH 300
lt. Anleitung soll bei Array der Parameter POINTER mit rein. habe ich mit und ohne versucht, klappt beides nicht.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Tom »

Das hier funktioniert einwandfrei, der Tooltip wird angezeigt. BTW, sind Tooltips bei Dir grundsätzlich verfügbar (DC_ToolTipEnable())?

Code: Alles auswählen

#include "dcdialog.ch"
#pragma library ("dclipx.lib")

FUNCTION Main()
LOCAL GetList := {}, oBrowse, aData := {}, i

FOR i := 69 to 110
  aAdd(aData,{Chr(i),Replicate(Chr(i),100)})
NEXT

@ 0,0 DCBROWSE oBrowse DATA aData SIZE 100,30

DCBROWSECOL ELEMENT 1 HEADER '1' WIDTH 10 PARENT oBROWSE
DCBROWSECOL ELEMENT 2 HEADER '2' WIDTH 50 PARENT oBROWSE DATATOOLTIP {||.T.} TIPBLOCK {|n|IF(n>0.and.n<Len(aData),oBrowse:DataSource[n,2],nil)}

DCREAD GUI FIT ADDBUTTONS TITLE 'Test'

RETURN NIL

PROC AppSys() ; RETURN
Herzlich,
Tom
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21164
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Manfred »

Hi Tom,
ich schrieb ja oben, dass alle anderen Tooltips funktionieren. Das Beispiel In Sektion 5 bei XDemo DataTooltTips klappt bei mir auch. Nur meine eigenen Dinge nicht.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Tom »

Den Pointer braucht man nicht, das ist Anno Zopf und hat nie verlässlich funktioniert (im Bedarfsfall DC_BrowseRow(oBrowse) verwenden). Ansonsten sieht Dein Code für mich schick aus. Seltsam. Ich baue morgen mal nach, wenn ich Zeit finde.

Was ist, wenn Du im Tipblock "oDialogZusatz:oBrowseTagesDienste:DataSource" als Arrayreferenz verwendest?
Herzlich,
Tom
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21164
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Manfred »

klappt auch nicht. Wer weiß, was ich da wieder übersehe.... :angry4:
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21164
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Manfred »

hm, irgendwie bin ich total ratlos, das genau diese Art Tooltip nicht klappt....
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2470
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Hat sich bedankt: 102 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Koverhage »

Bei mir funktioniert folgendes ohne Problem.
DCBROWSECOL DATA {|| ge->velf} PICTURE "@E 9999999.999" WIDTH 7 ;
PROTECT {|| YES} HEADER "Wert" ;
DATATOOLTIP {|| lDataToolTips} TIPBLOCK {|| str( ge->vevj,11,3)}

Wichtig: Der Tooltip wird mit einer gewissen Verzögerung angezeigt.
Gruß
Klaus
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21164
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Manfred »

ich habe hier ein Array.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2470
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Hat sich bedankt: 102 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Koverhage »

Was für eine DataSource do hast its den Tooltips egal.
Gruß
Klaus
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21164
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Manfred »

so sollte es sein, aber es klappt nicht.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Tom »

Was passiert, wenn Du mein - funktionierendes - Array-Beispiel von oben in Deinen Code nimmst, ggf. mit Deinem Array?
Herzlich,
Tom
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21164
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Manfred »

ich habe alle Deine Vorschläge ausprobiert, aber nichts tut sich, wenn ich mit der Maus über die Zeile/Spalte fahre und warte. Ich verstehe das nicht, ich weiß vor ewig langer Zeit hat das mal an anderer Stelle geklappt (aus einer DBF heraus nicht im Arry), aber jetzt klappt es nirgends mehr. Irgendwas ist da oberfaul, aber ich komme nicht drauf.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2470
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Hat sich bedankt: 102 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Koverhage »

Dann suche im Deinem Quellcode nach
DC_ToolTipEnable(YES or NO)
Falls nicht (weiß nicht ob es noch immer so ist, denke ja), der anzuzeigende Tooltip dar nicht aus einem
anderen Thread kommen.
Gruß
Klaus
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21164
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Manfred »

meinst Du jetzt dass ich diese Funktion selbst bei mir eingesetzt habe? Die kenne ich gar nicht.
Andere Tooltips klappen ja nur nicht die im browse. Oder worauf willst Du jetzt raus?
Wobei mir gerade auffällt, das nicht in jedem Menue alle Tooltips klappen. Kommt mir auch komisch vor.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21164
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Manfred »

wie könnte ich denn testen, ob das Grundprinzip klappt? Ich meine, vielleicht wird ja nur versucht etwas falsches, leeres anzuzeigen und deshalb sieht man nichts.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2470
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Hat sich bedankt: 102 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Koverhage »

xsample# (5 oder 6)
Gruß
Klaus
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21164
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Manfred »

die Samples klappen ja (wie schon oben erwähnt) Es geht jetzt nur daraum herauszufinden, ob und wenn ja was ICH hier wohl falsch mache.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2470
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Hat sich bedankt: 102 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Koverhage »

ersteze doch mal testweise
TIPBLOCK{|nPos| oDialogZusatz:aTagesdienste[nPos,BEMERKUNG]}
mit
TIPBLOCK{|nPos| "MeinToolTipText"}
Gruß
Klaus
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21164
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Manfred »

Hi Klaus,
klappt auch nicht. So ein Mist. Aber wie gesagt, die Pushbutton im gleichen Bildschirm funktionieren. Ob das mit irgendeinem Parent oder so zusammenhängen kann?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Koverhage
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2470
Registriert: Fr, 23. Dez 2005 8:00
Wohnort: Aalen
Hat sich bedankt: 102 Mal
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: DCBROWSECOL und DATATOOLTIP

Beitrag von Koverhage »

Was passiert wenn Du Deine Frage im Express++ Forum stellst ?
Gruß
Klaus
Antworten