Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Bitte Warten - Box (https://www.delphipraxis.net/1937-bitte-warten-box.html)

Hansa 31. Dez 2002 10:34


Bitte Warten - Box
 
Hi,

ich brauche irgendeine Box, wo halt so lange drin steht, bis halt irgenetwas fertig ist. Finde da nichts passendes. Habe zuerst einfach ShowMessage genommen, aber das geht ja nicht, da macht er ja erst weiter wenn OK gedrückt wird. :mrgreen:

Gruß
Hansa

MathiasSimmack 31. Dez 2002 10:52

Selber machen!

Form auf die Größe bringen, Text reinschreiben und das ganze nicht modal aufrufen:
Code:
Form2.Show
Als zweites Beispiel gibt´s den "Trick" aus den Delphi-Groups, mit dem du beim Laden deiner Forms einen Splash-Screen anzeigen kannst:
Delphi-Quellcode:
Application.Initialize;
with TWaitForm.Create(nil) do
try
  ActionLabel.Caption := 'initialisiere';
  pb1.Position := 0;
  Show;
  Update;

  Application.CreateForm(TForm1, Form1);
  pb1.Position := MulDiv( 1,100,10);

  { ... }

finally
  Free;
end;

Application.Run;
Steckt im DPR-Quelltext. Kannst du damit was anfangen?

Hansa 31. Dez 2002 10:56

Hi,

Zitat:

Steckt im DPR-Quelltext. Kannst du damit was anfangen?
Nee, nicht richtig, auch auf den fünften Blick nicht. :cry:

Gruß
Hansa

CalganX 31. Dez 2002 10:59

Wieso? Du kannst das doch so machen:

Delphi-Quellcode:
DeinBWartenForm.Show; {da ist kein Button drin, und das Symbol zum schließen ist nicht dabei}
tue_irgend_was;
DeinBWartenForm.Hide;
Sollte doch funktionieren... Wichtig ist nur, dass im DeinBWartenForm kein Button drin ist, und alle Symbole für Minimieren/Schließen/etc. ausgeblendet sind...

Chris

Hansa 31. Dez 2002 11:13

Hi,

Ja, das da müßte reichen, aber die, wie heißt die noch, die oberste blaue Zeile ? Die ist noch da, mit Schließsymbol.

Gruß
Hansa

CalganX 31. Dez 2002 11:18

Ja, aber du kannst ja da die Symbole auf der linken Seite ausblenden... Ich sage nur "Form.BorderIcons"...

Chris

Hansa 31. Dez 2002 11:26

Du meinst wohl BorderStyle auf bsNone einstellen ? :mrgreen: Das müßte so jetzt reichen.

Zitat:

Wichtig ist nur, dass im DeinBWartenForm kein Button drin ist, und alle Symbole für Minimieren/Schließen/etc. ausgeblendet sind...
Das verstehe ich allerdings noch nicht.

Gruß
Hansa

Hansa 31. Dez 2002 11:33

Hi,

noch was vergessen : Wie kriege ich es eigentlich hin, daß der Text in der Box blinkt ?

Gruß
Hansa

Luckie 31. Dez 2002 11:42

Versuch es mal so:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
begin
  Form2.Show;
  for i := 0 to 100000 do
  begin
    Listbox1.Items.Add(IntToStr(i));
    Form2.Progressbar1.Position := i;
  end;
  Form2.Hide;
end;

CalganX 31. Dez 2002 11:44

Zitat:

Zitat von Hansa
Du meinst wohl BorderStyle auf bsNone einstellen ? :mrgreen: Das müßte so jetzt reichen.

Zitat:

Wichtig ist nur, dass im DeinBWartenForm kein Button drin ist, und alle Symbole für Minimieren/Schließen/etc. ausgeblendet sind...
Das verstehe ich allerdings noch nicht.

Gruß
Hansa

NEIN! Ich meine die Eigenschaft "BorderIcons". Da nimmst du alles raus... da ist zwar die Leiste noch da, aber du kannst nicht mehr auf "Schließen" etc. klicken...

Chris

Hansa 31. Dez 2002 11:54

Hi,

@Chakotay: dann guck Dir bitte mal BorderStyle mit bsNone an. Die ist nämlich ganz und gar WEG !!

@Luckie:Ich will kein Wartezimmer ersetzen :lol: Da wird im Hintergrund ein anderes Programm geladen. Das dauert ca. 10 Sek. Für einige Zeitgenossen reicht das aus, daß sie denken der Rechner hängt und schalten ihn aus. Das blinken dient demselben Zweck. "Aha, da passiert was !" :mrgreen:

Gruß
Hansa

Luckie 31. Dez 2002 11:58

Dann habe ich dich nicht richtig verstanden.

Hansa 31. Dez 2002 12:04

Zitat:

Zitat von Luckie
Dann habe ich dich nicht richtig verstanden.

Das ist mir immer noch lieber, als überhaupt keine Antwort zu kriegen. :mrgreen:

Gruß
Hansa

Chewie 31. Dez 2002 12:59

Etwas blinken lassen kannst du ganz einfach mit einem Timer, der bei jedem OnTimer-Event die Eigenschaft enabled des Labels, in dem der Text steht, auf not Label1.enabled setzst.

Hansa 31. Dez 2002 15:48

Hi,

also da war sogar MS-DOS besser. Kein Wunder, wenn ich darüber nichts finde. Das mit dem Blinken ist erst jetzt wieder aufgetaucht. Bei DOS hast du nur geschrieben : color (green + 128) oder so, das wars. Aber bevor ich jetzt auch noch so etwas anfange : "Wie erzeuge ich ein 18-eckiges Label ?" laß ich den ganzen Mist weg.

guten Rutsch
Hansa


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:04 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