AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi treeview klick & Datenbank prüfen
Thema durchsuchen
Ansicht
Themen-Optionen

treeview klick & Datenbank prüfen

Ein Thema von Micha · begonnen am 3. Dez 2003 · letzter Beitrag vom 3. Dez 2003
Antwort Antwort
Micha

Registriert seit: 21. Jul 2003
Ort: Neumarkt
263 Beiträge
 
#1

treeview klick & Datenbank prüfen

  Alt 3. Dez 2003, 07:45
Folgendes Problem:

Ich haben einen TreeView, in dem Items aus einer Paradox-Tabelle geladen werden.
In dieser Tabelle gibt es auch ein Feld namens "Checkbox". Dieses Feld kann entweder den Wert "0" oder "1" haben.

Jetzt möchte bei Doppelklick auf Items, die eine 1 besitzen, dass eine Message ausgegeben wird.

Kann mir wer helfen?
  Mit Zitat antworten Zitat
WtF

Registriert seit: 24. Nov 2003
Ort: Nähe München
72 Beiträge
 
FreePascal / Lazarus
 
#2

Re: treeview klick & Datenbank prüfen

  Alt 3. Dez 2003, 07:49
Sorry ich hab dein Problem nicht genau verstanden glaube ich. Wieso benutzt du nicht das dblClick ereignis von TreeView? Soweit ich weiß darf aber dann dem OnClick ereignis allerdings nix zugewiesen sein.
Mfg
Steffen
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#3

Re: treeview klick & Datenbank prüfen

  Alt 3. Dez 2003, 08:03
Hi,

ich hab jetzt nicht genau mitbekommen, wo du bei Items die 1 oder 0 führst.

Generell kannst du im Ereignis des TreeView für Doppelklick aber das selektierte TreeNode ermitteln.

Das geht so:

Delphi-Quellcode:
...
var TreeNode : TTreeNode;
begin
  TreeNode := TreeView1.Selected;
   If TreeNode = nil then Exit;
...   // Hier weiter mit Prüfung auf deine Werte und Anzeige der MessageBox
end;
Hier währe der Punkt, dass auf das selectierte TreeNode reagiert wird. Möchtest du sicherstellen, dass der Cklickpunkt überprüft wird (mann kann ja auch auf eine andere Stelle im TreeView klicken wo kein Eintrag liegt), dann mußt du abfragen ob an dieser Stelle ein Eintrag liegt.
Dafür gibt es die Funktion
   function GetNodeAt(X, Y: Integer): TTreeNode; Entsprechende Beschreibung findest du in der OH.

Gruß oki
  Mit Zitat antworten Zitat
Micha

Registriert seit: 21. Jul 2003
Ort: Neumarkt
263 Beiträge
 
#4

Re: treeview klick & Datenbank prüfen

  Alt 3. Dez 2003, 08:04
@ wtf: Ich hab doch geschrieben, dass ich das Ganze per Doppelklick machen möchte.

Mir gehts darum, wie ich es rausbekomme, ob der Item eine 1 oder eine 0 in dem Feld "Checkbox" hat.
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#5

Re: treeview klick & Datenbank prüfen

  Alt 3. Dez 2003, 08:09
tut mir leid, dann verstehe ich die Frage auch nicht.

Gruß oki
  Mit Zitat antworten Zitat
Micha

Registriert seit: 21. Jul 2003
Ort: Neumarkt
263 Beiträge
 
#6

Re: treeview klick & Datenbank prüfen

  Alt 3. Dez 2003, 08:15
Aber trotzdem Danke @oki
Hat mir einerseits schon weitergeholfen, aber andererseits auch eben meine Frage nicht geklärt.

Also nochmal:
Ich ziehe mir die Items für den TreeView aus einer Datenbank. In dieser gibt es auch ein Feld names "Checkbox".

Z. B. steht in dieser Tabelle

ItemName Checkbox
1. Oberpunkt 1
2. Oberpunkt 0
1. Unterpunkt 1
2. Unterpunkt 1
3. Unterpunkt 0

Wenn man jetzt z. B. auf den Item "1. Oberpunkt" klickt, der ja eine "1" im Feld Checkbox hat, dass eine Message ausgegeben wird.
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#7

Re: treeview klick & Datenbank prüfen

  Alt 3. Dez 2003, 08:22
Ja klar, aber wo hinterlegst Du den Wert deines Feldes CheckBox?

oki
  Mit Zitat antworten Zitat
Micha

Registriert seit: 21. Jul 2003
Ort: Neumarkt
263 Beiträge
 
#8

Re: treeview klick & Datenbank prüfen

  Alt 3. Dez 2003, 08:24
dieser wird in einer anderen Form in eine Paradox-Tabelle geschrieben.
  Mit Zitat antworten Zitat
Benutzerbild von r_kerber
r_kerber

Registriert seit: 11. Feb 2003
Ort: Trittau
3.538 Beiträge
 
Delphi XE Professional
 
#9

Re: treeview klick & Datenbank prüfen

  Alt 3. Dez 2003, 08:27
Hallo Micha,

ich vermute, dass Du die Werte für das Feld Checkbox nur in der Datenbank zu stehen hast. Dementsprechend solltest Du vielleicht so vorgehen:
  • Inhalt des angeglickten Items ermitteln
  • Mit diesem Item eine Select auf der Datenbank ausführen (TQuery - im SQL eintragen):
    SQL-Code:
    SELECT Checkbox FROM Tabelle
    WHERE ItemSpalte = :iteminhalt
  • Im Programm etwa folgendes
    Delphi-Quellcode:
    Query1.Close;
    Query1.Params.ParamValues['iteminhalt'] := ItemInhalt;
    Query1.Open;
    CheckBoxWert := Query1.FieldByName('Checkbox').AsInteger;
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz