![]() |
Datenbank: ??? • Zugriff über: ???
Checkbox in Datenbank
Liste der Anhänge anzeigen (Anzahl: 1)
Ich möchte eine Datenbank anlegen , bei der im ersten Feld eine Checkbox ist
Schaut so ähnlich aus wie in einem Email-Programm. Die Daten werden dann nur verarbeitet wenn "checked:=True" Wie mach ich das am besten ? |
Re: Checkbox in Datenbank
Auf was zielt deine Frage ab auf den typ des Feldes in der Datenbank oder geht es dir um die Anzeige?
|
Re: Checkbox in Datenbank
Zitat:
Typ des Feldes = Boolean Aber wie zeige ich das an ? |
Re: Checkbox in Datenbank
Z.B. mit einer DBCheckBox.
In einem Grid müsstest du das selber machen (gibt es Beispiele für) oder verwendest z.B. das JvDBGrid aus der JVCL. |
Re: Checkbox in Datenbank
Hallo...
du hast dann für den Status der CheckBox ein Feld in der Datenbank. Vorzugsweise Integer. True=1 False=0. Mit dem JvDBGrid aus der JVCL kannst du dann das Feld auch wieder als Checkbox im Grid darstellen. Du mußt auch in den Optionen den Wert für True und den Wert für False zuordnen. :hi: Zitat:
|
Re: Checkbox in Datenbank
Zitat:
Wollte grade JVCL runterladen und installieren , funktioniert aber mit Delphi 2005 nicht, oder ? Außerdem gibt es soviele Versionen(z.B. daily), ich blick nicht durch welche die richtige ist ? |
Re: Checkbox in Datenbank
|
Re: Checkbox in Datenbank
Die aktuelle (freigegebene) JVCL-Version 3.34 findest Du hier:
![]() Möglicher Ansatz:
Delphi-Quellcode:
procedure TForm2.JvDBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState); begin ColorGrid(jvDBGrid1, DMMain.ZQuery_read, Rect, DataCol, Column, State); end; procedure TForm2.ColorGrid(dbgIn: TjvDBGrid; qryIn: TZQuery; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); var bValue: boolean; begin { Feststellen ob die anzuzeigende Nachricht noch nicht gelesen wurde } if (NOT DMMain.ZQuery_read.IsEmpty) AND (Column.Index = 0) THEN if qryIn.FieldByName('lesen').AsString = '1' then DMMain.ImageList1.draw(jvDBGrid1.Canvas , rect.left+0,rect.top+2,0) else DMMain.ImageList1.draw(jvDBGrid1.Canvas , rect.left+0,rect.top+2,1); end; |
Re: Checkbox in Datenbank
Oder man verwendet eine DBCheckBox als EditControl
|
Re: Checkbox in Datenbank
Ich hab jetzt JVCL und JCL erfolgreich installiert
War aber ne schwere Geburt, ich hab ewig rumgemacht bis es geklappt hat Ich hab dann die Setups runtergeladen, damit funktioniert es am besten ![]() ![]() |
Re: Checkbox in Datenbank
Jetzt weiss ich leider immer noch nicht, wie die Checkbox in das JvDBGrid kommt :gruebel:
|
Re: Checkbox in Datenbank
Richte sie als EditControl für das Feld ein
|
Re: Checkbox in Datenbank
|
Re: Checkbox in Datenbank
Jetzt funktioniert es
Warum muß man immer doppelklicken, damit die Checkbox den Wert ändert ??? Und warum geht das nicht mit dem normalen DBGrid und DBCheckbox ? |
Re: Checkbox in Datenbank
Zitat:
Eine normales DBGrid funktioniert auch. Es ist im Prinzip auch möglich, die beiden Elemente zu vereinen, aber die Ansätze, die ich bisher gesehen habe, sind deutlich aufwändiger. |
Re: Checkbox in Datenbank
Zitat:
Beim ersten Klick bekommt die Zelle den Focus, beim zweiten Klick bekommt die Checkbox den Wert |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:28 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz