Hallo,
bin gerade dabei etwas mit StringGrid's zu basteln. Es gibt die Möglichkeit über "FixedCols" bzw. "FixedRows" die absolute Anzahl von Spalten oder Zeilen festzustellen.
Sie werden grau dargestellt und man kann keine Eingabe mehr vornehmen.
Wie kann man aber z.B. nur die zweite Spalte "einer Tabelle" feststellen, oder die dritte Zeile?
Vielen Dank im voraus.
Gruß
Volker
Wie bei StringGrid bestimmte Zeile oder Spalte sperren?
-
- Beiträge: 353
- Registriert: Di 17. Feb 2009, 10:44
- OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
- CPU-Target: xxBit
-
- Lazarusforum e. V.
- Beiträge: 3178
- Registriert: Di 22. Jul 2008, 19:27
- OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
- CPU-Target: 32bit x86 armhf
- Wohnort: Köln
- Kontaktdaten:
Re: Wie bei StringGrid bestimmte Zeile oder Spalte sperren?
Indem du das selbst implementierst. Das ist keine Standardverhalten und kann daher auch nirgends eingestellt werden. Auf der anderen Seite solltest du dir überlegen, ob du deine Daten nicht anders gruppieren kannst.ErnstVolker hat geschrieben:Wie kann man aber z.B. nur die zweite Spalte "einer Tabelle" feststellen, oder die dritte Zeile?
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
-
- Beiträge: 353
- Registriert: Di 17. Feb 2009, 10:44
- OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
- CPU-Target: xxBit
Re: Wie bei StringGrid bestimmte Zeile oder Spalte sperren?
Danke für die Antwort. Das genügt mir. In meinem einfachen Fall drehe ich die Spalten einfach um.
Dann Kann mich mit FixedCol einfach die Erste von links sperren.
Die Tabelle hat nur zwei Spalten. Dient als Eingabemaske für einige Werte. Und in einem bestimmten Fall sollen halt keine Werte eingegeben werden dürfen.
Ich dachte man könnte beliebig Zeilen und Spalten sperren. So eine Routine wäre bereits implementiert. Andere Progger würden das auch häufiger nutzen.
Danke!!
Gruß
Volker
Dann Kann mich mit FixedCol einfach die Erste von links sperren.
Die Tabelle hat nur zwei Spalten. Dient als Eingabemaske für einige Werte. Und in einem bestimmten Fall sollen halt keine Werte eingegeben werden dürfen.
Ich dachte man könnte beliebig Zeilen und Spalten sperren. So eine Routine wäre bereits implementiert. Andere Progger würden das auch häufiger nutzen.
Danke!!
Gruß
Volker
-
- Beiträge: 290
- Registriert: Mo 24. Dez 2007, 13:14
- OS, Lazarus, FPC: WinXP-Pro-Sp3, Xubuntu 12.04, (Laz 1.1-SVN Mai2012, FPC 2.6.1 / 2.6.0-Linux)
- CPU-Target: AMD64X2
Re: Wie bei StringGrid bestimmte Zeile oder Spalte sperren?
Est gibt viele Lösungen davon 2:
1. Sehr einfach
OnSelectEditor-Ereignis verwenden, z.B. für dich:
2. EditorMode nur bei Bestimmten Zellen einschalten, dafür OnSelectCell-Ereignis verwenden-
1. Sehr einfach
OnSelectEditor-Ereignis verwenden, z.B. für dich:
Code: Alles auswählen
procedure TForm1.StringGrid1SelectEditor(Sender: TObject; aCol, aRow: Integer;
var Editor: TWinControl);
begin
if (ACol=1) or (ARow=2) then Editor:=nil;
end;