AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Outlookbar hierarchisch mit Daten füllen

Ein Thema von needatip · begonnen am 7. Jan 2007 · letzter Beitrag vom 9. Jan 2007
Antwort Antwort
needatip

Registriert seit: 11. Jan 2004
246 Beiträge
 
Delphi 10.4 Sydney
 
#1

Outlookbar hierarchisch mit Daten füllen

  Alt 7. Jan 2007, 23:16
Ich möchte eine JVOutlookbar mit den Werten aus einer Datenbank füllen.
Und zwar soll diese nach Jahreszahlen geordnet erscheinen.
Die Jahreszahlen sollen dabei die Pages darstellen und das Feld Name die untergeordneten Buttons.

Die Tabelle hat in etwa folgenden Aufbau:
Code:
JAHR | NAME
1999 | Name1
1999 | Name2
2000 | Name3
2000 | Name4
2000 | Name5
2000 | Name6
2001 | Name7
2002 | Name8
2002 | Name9
2002 | Name10
d. h. ich bestimme zuerst die Jahreszahlen per SQL Script.
SELECT DISTINCT JAHR FROM TABELLE1 Diese ordne ich dann den einzelnen 'Pages' zu:

Delphi-Quellcode:
procedure TfmMain.FormCreate(Sender: TObject);
var NewBarPage : TJVOutlookBarPage;
begin
  with MyQuery do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT DISTINCT JAHR AS ADATUM, NAME FROM TABELLE1');
    Open;
    First;
    while not EOF do
    begin
      NewBarPage := JvOutlookBar1.Pages.Add;
      NewBarPage.Caption := FieldByName('ADATUM').Text;
      Next;
    end;
  end;
end;
so weit so gut, jetzt hab ich bereits die einzelnen Pages mit den Jahreszahlen.
wie kann ich nun für die einzelnen 'Pages' die untergeordneten Buttons mit den entsprechenden Namen erzeugen?

Aussehen soll das ganze dann in etwa so:

Code:
1999
  Name1
  Name2
2000
  Name3
  Name4
  Name5
  Name6
2001
  Name7
2002
  Name8
  Name9
  Name10
usw.

wer kann mir weiterhelfen, wie ich die Outlookbar richtig fülle?
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Outlookbar hierarchisch mit Daten füllen

  Alt 8. Jan 2007, 11:51
Hallo,

ich würde es so versuchen:

Delphi-Quellcode:
procedure TDemoFrom.FormCreate(Sender: TObject);
var
  page: TJvOutlookBarPage;
  button: TJvOutlookBarButton;
begin
  with Query do
  begin
    SQL.Text := 'SELECT ID, JAHR, NAME FROM JN ORDER BY JAHR, NAME';
    Open;
    page := nil;
    while not Eof do
    begin
      if not Assigned(page)
      or not SameText(page.Caption, FieldByName('JAHR').AsString) then
      begin
        page := OutlookBar.Pages.Add;
        page.Caption := FieldByName('JAHR').Text;
      end;
      with page.Buttons.Add do
      begin
        Caption := FieldByName('NAME').Text;
        // Tag := FieldByName('ID').AsInteger;
      end;
      Next;
    end;
    Close;
  end;
end;
Grüße vom marabu
  Mit Zitat antworten Zitat
needatip

Registriert seit: 11. Jan 2004
246 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Outlookbar hierarchisch mit Daten füllen

  Alt 8. Jan 2007, 16:02

Du bist der beste !!!!
Supi - funktioniert einwandfrei.

Nur wie kann ich nun auf den Klick eines Buttons den entsprechenden Datensatz auswählen?
War das die Zeile mit 'Tag' mit der man dann auf das Tag zurückgreifen kann ???
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#4

Re: Outlookbar hierarchisch mit Daten füllen

  Alt 8. Jan 2007, 16:18
Du hast es genau richtig erkannt.

Freundliche Grüße
  Mit Zitat antworten Zitat
needatip

Registriert seit: 11. Jan 2004
246 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Outlookbar hierarchisch mit Daten füllen

  Alt 9. Jan 2007, 09:16
Wie greife ich nun auf die Tags von einer anderen Prozedur zu?
Man ich kriegs einfach nicht gebacken !
  Mit Zitat antworten Zitat
needatip

Registriert seit: 11. Jan 2004
246 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: Outlookbar hierarchisch mit Daten füllen

  Alt 9. Jan 2007, 10:09
Sorry, ich glaub ich habs:

Delphi-Quellcode:
procedure TfmMain.JvOutlookBar1ButtonClick(Sender: TObject; Index: Integer);
begin
  ShowMessage(IntToStr(JvOutlookBar1.ActivePage.Buttons[Index].Tag));
end;
  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 13:51 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