Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Statuszeile im Hauptfenster beeinflussen (https://www.delphipraxis.net/13465-statuszeile-im-hauptfenster-beeinflussen.html)

Highman72 19. Dez 2003 01:45


Statuszeile im Hauptfenster beeinflussen
 
Hallo Leute!

Vielleicht stehe ich ja nur auf dem Schlauch, aber... :wall:

Ich habe eine Statuszeile im Hauptfenster. Diese kann ich natürlich aus den anderen Programmteilen einzelner Units nicht ansprechen, weil ich ja das Hauptprogramm dann als Unit einladen müßte, was natürlich wegen Kreuzbezügen nicht funktioniert.

Also wollte ich die Statuszeile in eine eigene Unit packen, die ich dann im Hauptprogramm und in den die Statuszeile beeinflussenden Units nachladen kann.

Bisher richtig?

Nun ja, aber wie kann ich in einer eigenen Unit eine Statuszeile für das Hauptfenster machen, wenn ich dann die Hauptunit wieder nicht einladen kann?

Ich stehe wahrscheinlich wirklich nur auf dem Schlauch. Tschuldigung schon mal dafür, aber kann mir trotzdem jemand helfen?

Schöne Grüße,

Jens Eppler
Bad Schwalbach

[edit=sakura] BBCode aus Titel entfernt :roll: Mfg, sakura[/edit]

Christian Seehase 19. Dez 2003 02:38

Re: [b]Statuszeile im Hauptfenster beeinflussen[/b]
 
Moin Jens,

Zitat:

Zitat von Highman72
Bisher richtig?

ich würde sagen: Nein ;-)

Annahmen:
Dein Formular heisst Form1, und enthält die Statusleiste StatusBar1.
Beides in Unit1.
Du hast eine Unit2 aus der heraus Du die Statusbar1 auf Form1 ansprechen willst.


Dann müsstest Du nur die Unit1 im implementation Abschnitt der Unit2 mit unter uses aufnehmen, und kannst dort dann mit

Delphi-Quellcode:
Form1.StatusBar1.SimpleText := 'TEST';
auf die StatusBar zugreifen.

Leuselator 19. Dez 2003 05:11

Re: [b]Statuszeile im Hauptfenster beeinflussen[/b]
 
Nur falls Christian Dich verwirrt hat:
Unit 1:
Delphi-Quellcode:
Unit MyUnit1;
interface
uses MyUnit2;
type
  TMyForm1 = class(TForm)
//    ...BlaBla
  end
implementation
end.
Unit 2:
Delphi-Quellcode:
Unit MyUnit2;
interface
type
  TMyForm2 = class(TForm)
//    ...BluBlu
  end
implementation
uses MyUnit1;
end.
Das ist, wenn Du so willst, eine erlaubte Form von Kreuzbezug.
Gruß

(lol - 2xEdit um das hier hinzubekommen)

Highman72 19. Dez 2003 10:50

Re: [b]Statuszeile im Hauptfenster beeinflussen[/b]
 
:freak:
Hallo Leute, danke erst mal! Aber so richtig trifft es leider mein Problem nicht:

Delphi-Quellcode:
unit Unit1;
interface
uses Unit2;        {Muß ich aufrufen, damit ich bei Auswahl aus dem Menü dahin kann}
type
  TAnwendung = class(TForm)
    HauptStatusBar: TStatusBar;
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;
Delphi-Quellcode:
unit Unit2;
interface
uses Unit;         {Müßte ich jetzt eigentlich aufrufen, um auf HauptStatusBar zugreifen zu können}

...
Also lieber die Komplette Statusbar in eine eigene Unit, die ich dann jeweils von Unit1 und Unit2 aus aufrufen kann. Aber wie kann ich in dieser neuen Unit, nennen wir sie Unit3, eine Statusbar im Hauptprogramm (Unit1) erzeugen und behandeln? Wo zum Teufel liegt denn der Denkfehler??? :wall:

Christian Seehase 19. Dez 2003 11:42

Re: Statuszeile im Hauptfenster beeinflussen
 
Moin Jens,

wenn Du es so machst geht's wunderbar.

Delphi-Quellcode:
unit UNIT1;
interface
implementation
uses UNIT2;

// und

unit UNIT2;
interface
implementation
uses UNIT1;
Entscheidend ist, dass die jeweils andere Unit im implementation Abschnitt eingebunden wird, und nicht im interface Abschnitt.

Highman72 19. Dez 2003 11:50

Re: Statuszeile im Hauptfenster beeinflussen
 
Moin, moin!

:cyclops: Danke schön! Natürlich. Jetzt, wo Du's sagst... Nach ziemlich langer Delphi-Abstinenz und mehreren trost- und ausweglosen Access-Versuchen reumütig zurückgekehrt und siehe da: Geht doch viel einfacher, wa?

Danke noch mal.

Jens


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:30 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-2025 by Thomas Breitkreuz