wie bekommt man, dass AfterRowColChange zum feuern!

26/05/2008 - 04:07 von F. M. Piller | Report spam
hi füxe.

am 27.04. hab ich mal nachgefragt, wie ich die RelativeRow nach einem LOCATE
ermitteln kann, aber danach keine weiter antworten bekommen.

Da in eime Grid (miniübersicht) nicht ALLE relevanten Daten sichtbar sind,
möchte ich nach einer suchfunktion (LOCATE FOR) einen ToolTipText mit den
hier detaillierten Daten anzeigen, und zwar links oder rechts von der
gefundenen Zeile.

wenn ich folgenden Code verwende, dann feuert AfterRowColChange nicht, und
RelativeRow / ActiveRow werden nicht aktualisiert und bleiben auf 0 stehen.
Daher keine Zeilenpositionierung berechenbar.

| proc Grid.KeyPress
| IF nKeyCode == -2 && F3 - Suchen
| This.Search = INPUTBOX(...&suchbegriff eingeben...)
| if !EMPTY(This.Search)
| LOCATE FOR !EMPTY(AT(This.Search, MeineSuchFeldListe))
| .

nun hab ich einen "VON HINTEN durch die brust ins auge"-versuch gemacht, der
so aussieht
| proc Grid.KeyPress
| IF nKeyCode == -2 && F3 - Suchen
| if empty(This.Search)
| This.Search = INPUTBOX(...&suchbegriff eingeben...)
| if !EMPTY(This.Search)
| KEYBOARD "{F3}"
| endif
| else
| lcRecno = RECNO()
| LOCATE FOR !EMPTY(AT(This.Search, MeineSuchFeldListe)) .and.
!lcRecno == RECNO()
| if !found()
| =messagbeox("kein weiterer eintrag vorhanden")
| This.Search = ""
| endif
| endif
| .

und siehe da, AfterRowColChange feuert auf einmal und die RelativeRow ist
erfassbar. Somit kann ich nun die ToolTip-Position berechnen.

mal so gefragt, ist das ein BUG oder ein FEATURE :-))

mfg mike
 

Lesen sie die antworten

#1 Olaf Doschke
26/05/2008 - 09:57 | Warnen spam
| lcRecno = RECNO()
| LOCATE FOR !EMPTY(AT(This.Search, MeineSuchFeldListe)) .and.
!lcRecno == RECNO()

und siehe da, AfterRowColChange feuert auf einmal und die RelativeRow ist
erfassbar. Somit kann ich nun die ToolTip-Position berechnen.

mal so gefragt, ist das ein BUG oder ein FEATURE :-))



Warum soll es ein Bug sein, daß AfterRowColChange()
nicht làuft wenn sich die Row oder Column auch nicht
àndert?

Tschüß, Olaf.

Ähnliche fragen