Autor |
Beitrag |
Bergmann89
      
Beiträge: 1742
Erhaltene Danke: 72
Win7 x64, Ubuntu 11.10
Delphi 7 Personal, Lazarus/FPC 2.2.4, C, C++, C# (Visual Studio 2010), PHP, Java (Netbeans, Eclipse)
|
Verfasst: Fr 11.11.11 01:54
Hey,
ich steh grad vor nem Problem für das es sicher eine einfache Lösung gibt, ich aber grad keine finde. Und zwar versuche ich die MainForm erst anzuzeigen, wenn die restlichen Formulare auch geladen sind. Jetzt wird sie angezeigt, sobald sie erzeugt wurde. Wenn ich direkt nach dem Erzeugen ein Hide aufrufe, dann flackert sie nur kurz auf, aber das sieht sehr unschön aus. Weiß jmd wie ich die Form von Anfang an unvisible machen kann?
MfG Bergmann.
_________________ Ich weiß nicht viel, lern aber dafür umso schneller^^
|
|
Tranx
      
Beiträge: 648
Erhaltene Danke: 85
WIN 2000, WIN XP
D5 Prof
|
Verfasst: Fr 11.11.11 03:29
_________________ Toleranz ist eine Grundvoraussetzung für das Leben.
|
|
bummi
      
Beiträge: 1248
Erhaltene Danke: 187
XP - Server 2008R2
D2 - Delphi XE
|
Verfasst: Fr 11.11.11 06:29
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9:
| Application.Initialize; SendMessage(Application.Handle,sw_Hide,0,0); Application.CreateForm(TForm1, Form1); sleep(1000); Application.CreateForm(TForm2, Form2); sleep(1000); Showmessage('Alles erzeugt'); SendMessage(Application.Handle,sw_Show,0,0); Application.Run; |
_________________ Das Problem liegt üblicherweise zwischen den Ohren H₂♂
DRY DRY KISS
|
|
jaenicke
      
Beiträge: 19314
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Fr 11.11.11 06:48
Es ist standardmäßig sowieso so, dass das Formular erst dann angezeigt wird. Das ist also alles eigentlich gar nicht nötig. Ausprobieren sollte sich das mit einem simplen neuen Projekt mit zwei Formularen lassen, wobei im FormCreate des zweiten einfach ein Sleep eingebaut wird. Das Hauptformular sollte erst nach dem Sleep sichtbar werden.
Wenn das anders ist, dann liegt das an dem eigenen Code. Und da wir den nicht kennen, lässt sich dazu auch nicht viel sagen.
|
|
Bergmann89 
      
Beiträge: 1742
Erhaltene Danke: 72
Win7 x64, Ubuntu 11.10
Delphi 7 Personal, Lazarus/FPC 2.2.4, C, C++, C# (Visual Studio 2010), PHP, Java (Netbeans, Eclipse)
|
Verfasst: Fr 11.11.11 18:41
Hey,
@jaenicke: hast Recht, ich hab beim Laden der Formulardaten das Visible auch mit gespeichert und da wird es natürlich auch mit geladen. Hab's angepasst und jetzt gehts so, wie ich es haben wollte  Danke.
MfG Bergmann
_________________ Ich weiß nicht viel, lern aber dafür umso schneller^^
|
|
hathor
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 12.11.11 09:41
Man sollte auch Folgendes bedenken:
- wenn nach dem Programmstart "länger" nichts zu sehen ist, startet man das Programm nocheinmal, evtl. dann mit Administratorrechten - das ist nicht im Sinne des Programmierers... - deshalb nur 1 Instanz zulassen!
- Grundsätzlich sollte immer ein Lebenszeichen erkennbar sein - alles andere ist Quatsch und amateurhaft!
|
|
haentschman
      
Beiträge: 285
Erhaltene Danke: 33
DX10 Berlin Professional
|
Verfasst: Sa 12.11.11 09:47
Moin...
ich werfe mal noch das Stichwort "Splashscreen" in den Raum 
|
|
Bergmann89 
      
Beiträge: 1742
Erhaltene Danke: 72
Win7 x64, Ubuntu 11.10
Delphi 7 Personal, Lazarus/FPC 2.2.4, C, C++, C# (Visual Studio 2010), PHP, Java (Netbeans, Eclipse)
|
Verfasst: Sa 12.11.11 13:08
Hey,
ist alles schon verbaut  Dass das Programm nur einmal ausgeführt werden kann war schon vorher drin, und das Problem mit der MainForm hatte ich nur, weil ich nen FlashScreen einbauen wollte. Da is nämlich die Form immer aufgesprungen, obwohl der FlashScreen noch da war, bzw das Programm noch nicht vollständig initialisiert wurde.
MfG Bergmann.
_________________ Ich weiß nicht viel, lern aber dafür umso schneller^^
|
|
|