AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

StringGrid - Markierung ändert sich nicht

Ein Thema von himitsu · begonnen am 12. Nov 2003 · letzter Beitrag vom 13. Nov 2003
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#1

StringGrid - Markierung ändert sich nicht

  Alt 12. Nov 2003, 15:34
Hi ihr,

hab immer noch ein kleines Problem mit StringGrid.

Ich ändere zur Laufzeit StringGrid.Options.
Delphi-Quellcode:
StringGrid5.Options := StringGrid5.Options - [goRangeSelect, goRowSelect] + [goEditing];
{oder}
StringGrid5.Options := StringGrid5.Options - [goRangeSelect, goRowSelect];
Nach dieser Änderung sollte normalerweis nur noch das 1. Feld in der aktiven Zeile markiert sein.

Es bleibt aber die aktuelle Markierung so lange erhalten bis ich selber die Markierung ändere. Danach ist dann auch wirklich nur noch 1 Feld markiert.
Hab auch StringGrid.Selection abgefragt. Aber auch dort steht noch die angezeigte Markierung drin.

Diese gepunktete Markierungslinie wird geändert, aber das blaue bleibt.

Aus irrgend einem Grund kann ich auch noch StringGrid.Selection keine Werte zuweisen.
Zitat:
Der linken Seite kann nichts zugewiesen werden
Neu zeichnen und aktualiesieren hilft auch nicht.
Delphi-Quellcode:
StringGrid5.Repaint;
StringGrid5.Update;
StringGrid5.Refresh;

{und sogar hiermit versucht}
StringGrid5.Realign;



Beim zurücksetzten geht es, oder fällt zumindestens nicht auf.
StringGrid5.Options := StringGrid5.Options + [goRangeSelect, goRowSelect] - [goEditing];
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
huberlix

Registriert seit: 10. Nov 2003
46 Beiträge
 
#2

Re: StringGrid - Markierung ändert sich nicht

  Alt 12. Nov 2003, 18:32
StringGrid1.Selection:= TGridRect(Rect(2,1,2,1));
==Zeile1, Spalte2
Oder meinst du mit "Wert zuweisen", was in die Zelle schreiben? Das must du über Col und Row machen.

Gruß Bernd
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#3

Re: StringGrid - Markierung ändert sich nicht

  Alt 12. Nov 2003, 19:22
Ich hatte es in mehreren Versionen Versucht:
Delphi-Quellcode:
StringGrid1.Selection := TGridRect(Rect(2, 1, 2, 1));

StringGrid1.Selection.Left := 2;
StringGrid1.Selection.Top := 1;
StringGrid1.Selection.Right := 2;
StringGrid1.Selection.Bottom := 1;

StringGrid1.Selection.TopLeft := TGridCoord(Point(2, 1));
StringGrid1.Selection.BottomRight := TGridCoord(Point(2, 1));
Und über all heißt es, das der linken Seite nichts zuweisbar ist.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: StringGrid - Markierung ändert sich nicht

  Alt 12. Nov 2003, 20:20
Hallo Himitsu,
der Tip von huberlix sollte eigentlich funktionieren.

Zitat von OH:
property Selection: TGridRect;

Beschreibung

Mit Selection können Sie einen Zellbereich auswählen. Selection enthält entweder für erste Spalte, die erste Zeile, die letzte Spalte und die letzte Zeile im Gitter oder die Zeilen- und Spaltenkoordinaten der linken oberen und der rechten unteren Zelle des ausgewählten Bereichs.

Selection kann nur mehrere Zellen repräsentieren, wenn Options den Wert goRangeSelect enthält.
Zitat von OH:
Der folgende Programmcode markiert das Recheck, das die Zeilen 1 bis 4 und die Spalten 2 und 3 enthält.

procedure TForm1.Button1Click(Sender: TObject);
var
myRect: TGridRect;
begin
myRect.Left := 3;
myRect.Top := 1;
myRect.Right := 2;
myRect.Bottom := 4;
DrawGrid1.Selection := myRect;
end;
Hast Du goRangeSelect ausgewählt?
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#5

Re: StringGrid - Markierung ändert sich nicht

  Alt 12. Nov 2003, 21:56
Egal ob goRangeSelect ausgewählt ist oder nicht, der Compiler mekert immer rum. Hab's sogar in einem neuen/leeren Form versucht - ging auch nicht.
Das ist ja mein Prob, egal was ich versuche, es geht einfach nichts.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
huberlix

Registriert seit: 10. Nov 2003
46 Beiträge
 
#6

Re: StringGrid - Markierung ändert sich nicht

  Alt 13. Nov 2003, 14:37
Ok, ich hab jetzt ein StringGrid und nen Button auf die Form gepappt.
Dann in Button1Click die Selection reingeschrieben. Funktioniert einwandfrei.
Hier mal die ganze Unit. Vergleich mal genau! Ich denk der Fehler liegt irgendwo anders.

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Grids;

type
  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  stringgrid1.Selection:=TGridRect(Rect(3,3,3,3));
end;

end.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#7

Re: StringGrid - Markierung ändert sich nicht

  Alt 13. Nov 2003, 14:57
Ich weis ja selber das es gehen sollte, aber aus irrgend einem Grund geht es plötzlich nicht mehr.

Installiere jetzt erst mal alles neu, mal seh'n was passiert.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#8

Re: StringGrid - Markierung ändert sich nicht

  Alt 13. Nov 2003, 15:30
Keine Ahnung wieso, aber jetzt geht es wieder.
Hatte doch schon mal neu installiert.

Dennoch Danke für eure Hilfe


Falls doch noch jemandem einfällt woran das gelegen haben kann.
Mich würde es immer noch interresieren, denn gelösst ist es ja nicht so richtig.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz