Deprecated: Function set_magic_quotes_runtime() is deprecated in /var/www/web1643/html/phpBB3/common.php on line 106
[phpBB Debug] PHP Notice: in file /includes/session.php on line 916: Cannot modify header information - headers already sent by (output started at /common.php:106)
[phpBB Debug] PHP Notice: in file /includes/session.php on line 916: Cannot modify header information - headers already sent by (output started at /common.php:106)
[phpBB Debug] PHP Notice: in file /includes/session.php on line 916: Cannot modify header information - headers already sent by (output started at /common.php:106)

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 472

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 112

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 112

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 112

Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /var/www/web1643/html/phpBB3/includes/bbcode.php on line 112
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3526: Cannot modify header information - headers already sent by (output started at /common.php:106)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3528: Cannot modify header information - headers already sent by (output started at /common.php:106)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3529: Cannot modify header information - headers already sent by (output started at /common.php:106)
[phpBB Debug] PHP Notice: in file /includes/functions.php on line 3530: Cannot modify header information - headers already sent by (output started at /common.php:106)
ppsGrid.de • Thema anzeigen - Zeile selektieren und in den Fokus bringen

Zeile selektieren und in den Fokus bringen

Hier werden Fragen zur Programmierung des ppsGrids...

Zeile selektieren und in den Fokus bringen

Beitragvon eoe am 10.02.2014, 11:18

Hallo Torsten,

ich habe eine Frage zur Selektion eine Zeile in einem Grid. Ich habe das grid aufgebaut und möchte eine bestimmte Zeile selektieren (mache ich an einem Objekt im Tag-Attribut fest). Die Zeile soll farblich hervorgehoben sein (wie bei einem Mausklick) und soll sichtbar sein. Wie kann ich das erreichen. Wenn ich eine Row auf Selected setze, passiert leider nichts von beiden Wünschen. Die Zeile ist zwar selektiert, aber ich kann es visuell anzeigen.

Grüße

Erik

public void SelektiereKnoten(IStrukturKnoten knoten)
{
if (Rows.Count > 1)
{
//Alle Positionen neu Nummerieren
for (int i = 1; i < Rows.Count; i++)
{
IStrukturKnoten tempknoten = Rows[i].Tag as IStrukturKnoten;
if (tempknoten != null && knoten == tempknoten)
{
Rows[i].Selected = true;
}
}
}
}
eoe
 
Beiträge: 38
Registriert: 17.04.2007, 15:02
Wohnort: Oedheim

Re: Zeile selektieren und in den Fokus bringen

Beitragvon torsten am 10.02.2014, 14:03

Hallo Erik
Schön von dir zu hören :-)

ich habe eine Frage zur Selektion eine Zeile in einem Grid. Ich habe das grid aufgebaut und möchte eine bestimmte Zeile selektieren

Ist doch einfach:
Code: Alles auswählen
grid.Selection.Clear();                        // alte Markierungen löschen
grid.FocusCell=  new Point (col,row);          // Fokuszelle setzen
// grid.Cells[col, row].Selected= true;        // Zelle markieren/selektieren
grid.Rows[row].Selected= true;                 // ...oder Zeile
grid.EnsureVisible(grid.Cells[col,row]);       // Zur Fokuszelle scrollen


Du musst zwischen Markierung und Fokuszelle unterscheiden:
    - Die Markierung kann aus mehren Zellen bestehen und ist evtl. auch sichbar, wenn das Grid nicht den Fokus hat (siehe Eigenschaft grid.HideSelection)
    - Die Fokuszelle ist immer nur eine Zelle groß und immer unsichtbar, wenn das Grid den Fokus nicht hat.

Dein Quelltext scheint soweit ok. Nur das Löschen der alten Markierung fehlt. Ich unterscheide hier konsequent zwischen den
Markierungen, die der User durch Maus und Tastatur erzeugt und der Markierung, die durch dein Programm erzeugt wird.
Jede Markierung, die du durch dein Programm erzeugst, wird zu den Markierungen des User hinzugefügt. Die User-Markierung
kann aber explizit gelöscht werden (Eigenschaft: Selected oder Selection-Object)
Beachte außerdem: Die durch dein Programm erzeugen Markierungen halten sich nicht an die Einschränkungen
bezgl. "grid.SelectionMode" bzw. "grid.SelectionType". Hast du zum Beispiel "grid.SelectionType = ppsGrid.eSelectionType.Single"
eingestellt, kannst du trotzdem per Programm "grid.Rows[row].Selected= true" die gesamte Zeile markieren.

Ich hoffe, ich konnte dir helfen...
Gruß Torsten
torsten
Site Admin
 
Beiträge: 92
Registriert: 02.05.2006, 09:04
Wohnort: Bremen

Re: Zeile selektieren und in den Fokus bringen

Beitragvon torsten am 11.02.2014, 10:49

Nachtrag:
Wenn die Markierungen nicht angezeigt werden, liegt das vielleicht auch daran, dass das Grid
nicht den Fokus besitzt. Erzeugst du das Ereignis "SelektiereKnoten" durch ein anderes Steuerelement?
Wenn das Grid die Markierungen auch anzeigen soll, wenn es nicht den Fokus besitzt, musst
du dies durch die Eigenschaft "grid.HideSelection" einstellen:
Code: Alles auswählen
grid.HideSelection = eHighlight.None;       // markierungen werden nie angezeigt
grid.HideSelection = eHighlight.Focused;    // ...werden angezeigt mit Fokus
grid.HideSelection = eHighlight.Always;     // ...werden immer angezeigt

Mmmhhh...: "HideSelection==eHighlight.Always" zeigt die Markierung immer an...(komisch)
Entweder stimmt die Doku nicht oder ich hatte beim Proggen ein Blackout :-)
Einfach mal die drei Einstellungen durchprobieren
Gruß Torsten
torsten
Site Admin
 
Beiträge: 92
Registriert: 02.05.2006, 09:04
Wohnort: Bremen

Re: Zeile selektieren und in den Fokus bringen

Beitragvon eoe am 19.02.2014, 12:04

Hallo Torsten,

danke für die Tipps. Jetzt geht es wunderbar. Mit EnsureVisibility und dem Fokus auf das Grid ist alles gut...

Erik
eoe
 
Beiträge: 38
Registriert: 17.04.2007, 15:02
Wohnort: Oedheim


Zurück zu Fragen zur Programmierung

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron