Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

Re: markierung im Stringgrid verhindern

  Alt 5. Apr 2004, 20:41
Also ich war immer der Meinung, dass wenn eine Zelle nicht editiert werden darf (kein goEditing in Options), dass dann der Inhalt auch nicht durch reinkopieren geändert/editiert werden kann.


In der Ereignis-Prozedur OnSelectCell des SringGrid's kannst du zum Beispiel so verhindern, dass die Zelle [1, 1] markiert werden kann, demnach kann man dort auch nicht's reinkopieren.

Delphi-Quellcode:
Procedure TForm_.StringGridXSelectCell(Sender: TObject; ACol, ARow: Integer; Var CanSelect: Boolean);
  Begin
    CanSelect := (ACol <> 1) or (ARow <> 1);
  End;


Ich würde dir auch empfehlen das andere auch noch dort reinzumachen, da das bei dir ja in 'ner MouseMove-Ereignisprozedure steht, könnte man ja locker die Felder auch mir der Tastatur anspringen, ohne das sie gesperrt werden

Delphi-Quellcode:
Procedure TForm_.StringGridXSelectCell(Sender: TObject; ACol, ARow: Integer; Var CanSelect: Boolean);
  Begin
    CanSelect := (ACol <> 1) or (ARow <> 1);

   // ist 'frei' dann Eingabe unmöglich machen
   if DayList[ACol].isfree Then
      Stringgrid1.Options := StringGrid1.Options - [goEditing]
   else
      Stringgrid1.Options := StringGrid1.Options + [goEditing];
  End;
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat