Einzelnen Beitrag anzeigen

Blechwolf

Registriert seit: 9. Sep 2003
Ort: Aachen
126 Beiträge
 
Delphi 7 Professional
 
#1

StringGrid Zellen Markierung

  Alt 4. Nov 2003, 15:37
Salut,

ich habe da mal ne Frage...
Ich habe eine Tabelle (ein String Grid), in das Werte-Paare eingefügt werden. In einer Spalte die X-Werte, in der nächsten Spalte dann die Y-Werte.

Ich will nun, wenn ich einen X-Wert auswähle auch automatisch den entsprechenden Y-Wert auswählen bzw. wenn ich auf den Y-Wert klicke, auch automatisch den entsprechenden X-Wert ausgewählt bekommen.

Mein StringGrid hat die Eigenschaft goRangeselect auf True gesetzt bekommen, und die OnSelectCell sieht wie folgt aus:

Delphi-Quellcode:
procedure TFrmSeries.SGValueTableSelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
var
  myRect : TGridRect;
begin
  if ACol mod 2 = 0 then
    begin
      myRect.Left := ACol;
      myRect.Right := ACol+1;
    end
  else
    begin
      myRect.Left := ACol-1;
      myRect.Right := ACol;
    end;

  myRect.Top := ARow;
  myRect.Bottom := ARow;

  SGValueTable.Selection := myRect;
  
  // Alles 3 ausprobiert, hilft nix
// SGValueTable.Update();
// SGValueTable.Refresh();
// SGValueTable.Repaint();
end;
In den Spalten mit den geraden Nummern (0,2,4,...) stehen die X-Werte drin in den anderen die Y-Werte. Deswegen zuerst die Abfrage wo ich bin, und dementsprechend wird dann myRect gefüllt.

Nur irgendwie zeigt der mir nicht die Markierung an, die ich haben will, sondern eben weiterhin die einzelne Zelle.
Hat jemand ne Idee ??

Grüße

Wolf
Ein Schiff im Hafen ist sicher. Aber dafür werden Schiffe nicht gebaut. (engl. Sprichwort)
  Mit Zitat antworten Zitat