AGB  ·  Datenschutz  ·  Impressum  







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

Ein Popup erscheinen lassen

Ein Thema von möp001 · begonnen am 8. Jun 2008 · letzter Beitrag vom 9. Jun 2008
Antwort Antwort
Seite 1 von 2  1 2      
möp001

Registriert seit: 8. Jun 2008
13 Beiträge
 
#1

Ein Popup erscheinen lassen

  Alt 8. Jun 2008, 21:40
Hallo
Ich möchte gerne, dass nach einem Buttonklick oder so ein neues Fenster aufgerufen wird und man dort eine Eingabe machen kann.

Sowas wie ein Popup in einem Browser.

Dieses sollte möglichst im Vordergrund sein, das heißt, wenn das programm i-wo im Hintergrund lläuft und man etwas anderes macht, dass das Popup dann im Vordergrund ist und man es sieht.

Wie könnte man das mit Delphi realisieren?
ein 2. Form erstellen und es dann mit Form2.Hide und Form2.Show erscheinen/verschwinden lassen?
aber ich hab noch keine Komponente gefunden mit der man ein solches zweites Formular erstellen kann =/

Gibt es noch eine andere Lösung?

Danke
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Ein Popup erscheinen lassen

  Alt 8. Jun 2008, 21:41
Zitat:
ein 2. Form erstellen und es dann mit Form2.Hide und Form2.Show erscheinen/verschwinden lassen?
ganz genau so
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#3

Re: Ein Popup erscheinen lassen

  Alt 8. Jun 2008, 21:45
Du benötigst zum Erstellen an sich keine Komponente, das geht komplett über die IDE. Es klingt allerdings so, als wolltest du ein Formular dynamisch erzeugen. Folgender Code erzeugt 100 Formulare falls dich das weiterbringt:
Delphi-Quellcode:
var Formular : TForm;
    i : Integer;
begin
  for i := 0 to 99 do
  begin
    Formular := TForm.Create(Self);
    Formular.Caption := 'Formular'+IntToStr(i);
  end;
end;
In dieser Form könnte das bei den Freigaben aber Ärger geben, ein Array of TForm könnte aushelfen, außer die VCL gibt die Formen - wie ich denke - automatisch frei.
  Mit Zitat antworten Zitat
Benutzerbild von divBy0
divBy0

Registriert seit: 4. Mär 2007
Ort: Sponheim
1.021 Beiträge
 
Delphi XE2 Professional
 
#4

Re: Ein Popup erscheinen lassen

  Alt 8. Jun 2008, 22:05
Vielleicht reicht dir ja das schon aus.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  Eingabe: String;
begin
  InputQuery('Überschrift', 'Eingabebeschreibung', Eingabe);
end;
Marc
  Mit Zitat antworten Zitat
thabaker

Registriert seit: 1. Jul 2007
50 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Ein Popup erscheinen lassen

  Alt 8. Jun 2008, 23:00
sonst mal unter "ShowModal" in der Hilfe schauen... zeigt jedes bel. Fenster als Modales Fenster, d.h. man muss es erst abarbeiten bevor man mit der Anwendung weitermachen kann.
  Mit Zitat antworten Zitat
möp001

Registriert seit: 8. Jun 2008
13 Beiträge
 
#6

Re: Ein Popup erscheinen lassen

  Alt 9. Jun 2008, 19:04
mit inputquery oder inputbox ist es schlecht, ich möchte noch ein bild in dem popup haben.
  Mit Zitat antworten Zitat
Cyf

Registriert seit: 30. Mai 2008
407 Beiträge
 
Lazarus
 
#7

Re: Ein Popup erscheinen lassen

  Alt 9. Jun 2008, 20:02
Ok, ich verusch mal zu helfen

Falls du nur eine Art von Dialog zur Benutzerinformation/-interaktion brauchst, sollte das hier helfen (erster Treffer einer großen amerikanischen, von mir eigentlich ungeliebten Suchmaschiene, keine Qualitätsgarantie von mir, weil nur schnell überflogen, aber such einfach mal nach "Delphi Dialog" irgendwo und du wirst viele Tutorials finden).
Brauchst du ein etwas komplexeres Fenster, was erst geschlossen werden muss, ehe es weitergeht, dann mach dir ein neues Form, design es wie dus brauchst und öffne es mit ShowModal(), wie schon genannt wurde. Auch hierzu wird man fündig werden, wenn man weitere Infos braucht, ist aber eigentlich nicht schwer.

Zum direkten Aufruf beim Start, kommt es darauf an was du machen willst:

1. Du willst etwas am schon bestehenden Form ändern, z.b. 100 Einträge in ein Memo-Feld schreiben, oder so etwas:
Benutze das FormCreate() Ereignis, am einfachsten erstellst du es, wenn du einfach auf dein Form im Designer doppelklickst.

2. Du willst direkt beim Programmstart, vor der Form-Erstellung etwas machen (z.B. globale Variablen initalisieren, oder Randomize ausführen):
Beachte zunächst, das du hierbei nicht auf Teile des Forms zugreifen kannst, da dieses noch nciht besteht.
Erstelle im Code einen initialization-Abschnitt (nach der letzten Implementierung, vor dem end.) und führe dort den gewünschten Code aus.

So hoffe das ist, was du suchst.

[Edit: Beispiel anhängen]

FolgenderCode erstellt bei Programmbeginn z.B ein modales Form dynamisch und wartet bis es gesclossen wird, ehe das Hauptform angezeigt wird:

Delphi-Quellcode:
uses
  Windows, ..., MyModalFormUnit; //Unit des Forms in uses eintragen

...

procedure TForm1.FormCreate(Sender: TObject);
var ModalForm: TMyModalForm; //oder ggf. eine globale Variable verwenden und Free nicht verwenden, oder später initialisieren, kommt auf Zweck an
begin
  ModalForm:= TMyModalForm.Create(Self); //Speicher allokieren, Instanz erstellen
  ModalForm.ShowModal; //Rückgabewert von ShowModal ggf. überprüfen, siehe Onlinehilfe
  ModalForm.Free; //Instanz freigeben
end;
  Mit Zitat antworten Zitat
möp001

Registriert seit: 8. Jun 2008
13 Beiträge
 
#8

Re: Ein Popup erscheinen lassen

  Alt 9. Jun 2008, 20:33
danke erstmal

hab alles so kopiert,
kommt ein fehler: [Fataler Fehler] Unit1.pas(7): Datei nicht gefunden: 'MyModalFormUnit.dcu'

eigentlich wollte ich nur ein neues formular erstellen, was dann i-wann erscheint, davor wollte ich aber noch sagen was dortdrin sein soll (image, edit, usw. . .).
aber das zweite form sollte dem ersten untergeordnet sein, sodass ich werte zurückgeben kann.
  Mit Zitat antworten Zitat
Benutzerbild von Fussball-Robby
Fussball-Robby

Registriert seit: 22. Okt 2007
Ort: Nähe Köln
1.063 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: Ein Popup erscheinen lassen

  Alt 9. Jun 2008, 20:36
Du musst auch schon eine 2. Form erstellen und den Unit-Namen auf den deiner 2. Form anpassen
Robert L.
Der folgende Satz ist richtig!
Der vorherige Satz ist falsch!

Paradox
  Mit Zitat antworten Zitat
möp001

Registriert seit: 8. Jun 2008
13 Beiträge
 
#10

Re: Ein Popup erscheinen lassen

  Alt 9. Jun 2008, 20:41
das is mir zu kompliziert >.<

ich wollte einfach nur sowas ähnliches wie diese inputbox erstellen, nur daneben soll ein kleines bildchen erscheinen und drüber ein wenig text
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 11:46 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