Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

Re: StringGrid Zellen Markierung

  Alt 4. Nov 2003, 16:48
Ich vermute mal das durch OnSelectCell deine Zuweisung danach wieder überschrieben wird.
Wenn das Ganze aber in OnClick verschoben wird, geht es.

Delphi-Quellcode:
{SGValueTable / OnClick}
Procedure TForm1.SGValueTableClick(Sender: TObject);
  Var myRect: TGridRect;

  Begin
    If SGValueTable.Selection.Left mod 2 = 0 Then Begin
      myRect.Left := SGValueTable.Selection.Left;
      myRect.Right := SGValueTable.Selection.Left + 1;
    End Else Begin
      myRect.Left := SGValueTable.Selection.Left - 1;
      myRect.Right := SGValueTable.Selection.Left;
    End;
    myRect.Top := SGValueTable.Selection.Top;
    myRect.Bottom := SGValueTable.Selection.Top;
    SGValueTable.Selection := myRect;
  End;

{oder etwas kleiner}

Procedure TForm1.SGValueTableClick(Sender: TObject);
  Begin
    SGValueTable.Selection := TGridRect(Rect(
      SGValueTable.Selection.Left div 2 * 2, SGValueTable.Selection.Top,
      SGValueTable.Selection.Left div 2 * 2 + 1, SGValueTable.Selection.Top));
  End;
Bei einer Zuweisung auf Selection wird die letzte Zelle in der Markierung (unten/rechts) aktiviert.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat