Autor Téma: Vytvorenie formulára bez pridania do automaticky vytváraných  (Přečteno 1513 krát)

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4438
  • Karma: 39
    • Verze Delphi: XE7 professional
Vytvorenie formulára bez pridania do automaticky vytváraných formulárov projektu.
Teraz mi ich tam vždy nahádže aj ich musím vyhadzovať. Dá sa to niekde nastaviť?
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline vandrovnik

  • Guru
  • *****
  • Příspěvků: 781
  • Karma: 43
    • Verze Delphi: 10.3
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #1 kdy: 19-09-2019, 10:10:25 »
Excellent
Rated 1 time
Tools, Options, User interface, Form Designer, Auto create forms & data modules.

Offline KarelHorky

  • Plnoletý
  • ***
  • Příspěvků: 204
  • Karma: 8
    • Verze Delphi: 7, XE6, Delphi 10.2 Tokyo
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #2 kdy: 19-09-2019, 10:55:14 »
Špica! :D
Toto mě už dávno rozčilovalo. Jen poznamenám, že v mých Delphi XE6 je to mírně jinde:
Tools, Options, Environment Options, Form Designer, Auto create forms & data modules.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4438
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #3 kdy: 19-09-2019, 11:53:32 »
Ja tú voľbu nemám zaškrtnutú, a aj tak mi ich tam hádže. Skúsim to zmeniť a reštartovať XE7. 2 x.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4438
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #4 kdy: 19-09-2019, 11:59:42 »
Hádže mi ich tam stále. Bez ohľadu na stav tejto voľby.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline KarelHorky

  • Plnoletý
  • ***
  • Příspěvků: 204
  • Karma: 8
    • Verze Delphi: 7, XE6, Delphi 10.2 Tokyo
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #5 kdy: 19-09-2019, 12:46:26 »
Když přidám přes File - New - VCL Form, vloží se nový form do Available Forms.
Jak je přidáváš a jaké (VCL)?

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4438
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #6 kdy: 19-09-2019, 15:33:49 »
Pridávam ich presne tak ako to píšeš. Samozrejme, že ide o VCL.
Otvorím si Project Options a mám ho v zložke Forms
  • v ľavej časti Auto-Create forms
  • samozrejme, že je aj v časti Availabe Forms
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Morrison

  • Hrdina
  • ****
  • Příspěvků: 273
  • Karma: 12
    • Verze Delphi: D5, XE2
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #7 kdy: 20-09-2019, 08:56:04 »
To je nějaký divný. Měl by být buď v Autocreate, nebo v Available, určitě ne v obou.
nil

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4438
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #8 kdy: 20-09-2019, 11:53:33 »
Pardon. To som napísal somarinu. Je vždy v Auto-Create.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline KarelHorky

  • Plnoletý
  • ***
  • Příspěvků: 204
  • Karma: 8
    • Verze Delphi: 7, XE6, Delphi 10.2 Tokyo
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #9 kdy: 20-09-2019, 12:22:42 »
První v projektu je Mainform a je vždy v autocreate. Další už by měli být v Available. U mně to tak je.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4438
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #10 kdy: 20-09-2019, 12:28:32 »
U mňa nie. V autocreate mám len jediný DataModul. Až po splnení určitých podmienok vytvorím vstupný/prihlasovací formulár a až po prihlásení (v súčasnosti ešte neriešené) vlastný hlavný formulár aplikácie. Všetko dynamicky.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4438
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #11 kdy: 20-09-2019, 12:49:19 »
Dodatok: prihlasovací formulár nie je formulárom aplikácie.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline martinnr

  • Plnoletý
  • ***
  • Příspěvků: 172
  • Karma: 2
    • Verze Delphi: 7,2009,XE7
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #12 kdy: 20-09-2019, 12:54:13 »
v "AutoCreate" nemusi byt v podstate ziaden formular. ak sa to osetri v dpr, kde je kod ktory sa vykonava pri starte aplikacie, tak tam si mozes nakodovat, ze ktory form a kedy sa vytvori, atd.

Offline vandrovnik

  • Guru
  • *****
  • Příspěvků: 781
  • Karma: 43
    • Verze Delphi: 10.3
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #13 kdy: 20-09-2019, 12:58:46 »
U mňa nie. V autocreate mám len jediný DataModul. Až po splnení určitých podmienok vytvorím vstupný/prihlasovací formulár a až po prihlásení (v súčasnosti ešte neriešené) vlastný hlavný formulár aplikácie. Všetko dynamicky.

Možná proto Ti Delphi dávají nový dormulář do Autocreate? Mají třeba pocit, že alespoň jeden formulář tam musí být.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4438
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #14 kdy: 20-09-2019, 13:33:40 »
Tiež mi to napadlo. Ale mám tak nešťastne urobené objekty, že to ináč neviem.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline vandrovnik

  • Guru
  • *****
  • Příspěvků: 781
  • Karma: 43
    • Verze Delphi: 10.3
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #15 kdy: 20-09-2019, 13:36:21 »
Pokud by to bylo opravdu tím, tak by možná stačilo v .dpr udělat něco jako:
Kód: Delphi [Vybrat]
  1. {$IFDEF nemame}
  2.   Application.CreateForm(TMainForm, MainForm);
  3. {$ENDIF}

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4438
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #16 kdy: 20-09-2019, 15:02:27 »
Použil som {$IFDEF DEBUG or RUNTIME}. Bez zmeny.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 2594
  • Karma: 133
    • Verze Delphi: D2007, XE3, DX10
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #17 kdy: 20-09-2019, 15:17:34 »
Tiež mi to napadlo. Ale mám tak nešťastne urobené objekty, že to ináč neviem.
Je otazka, kdo ma co nestatne udelane... Pro inspiraci se podivej na tohle https://forum.delphi.cz/index.php/topic,16566.msg103720.html#msg103720

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4438
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #18 kdy: 20-09-2019, 16:18:35 »
Nemyslím si, že by to bol zrovna môj či podobný prípad. Akurát vždy keď vytvorím nový formulár, tak ho musím vybrať z Auto-Create.
Nie vždy mi trkne, prečo mám pri spustení aplikácie chybu. Pokiaľ sa mi daný formulár zobrazí, tak to je jasné.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline vandrovnik

  • Guru
  • *****
  • Příspěvků: 781
  • Karma: 43
    • Verze Delphi: 10.3
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #19 kdy: 20-09-2019, 16:41:11 »
.dpr:

Kód: Delphi [Vybrat]
  1. {$DEFINE Pokus}
  2. {$I Pom.inc}
  3.  
  4. begin
  5.   Application.Initialize;
  6.   Application.MainFormOnTaskbar := True;
  7.   {$IFDEF Pokus}
  8.    Application.CreateForm(TForm1, Form1);
  9.   {$ENDIF}
  10.   Application.Run;
  11. end.

Pom.inc:
Kód: Delphi [Vybrat]
  1. {$UNDEF Pokus}

IDE je spokojené, že má MainForm, i když ho pak ve skutečnosti nemá.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4438
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #20 kdy: 20-09-2019, 19:17:04 »
Nepomohlo. Predpokladám že riadok {$I Pom.inc} tam nemá byť, lebo mi hlásil chybu.
A hlavne sa mi ten formulár nevytvorí.
Kód: Delphi [Vybrat]
  1. {$DEFINE Pokus}
  2. {$UNDEF Pokus}
  3. begin
  4. ...
  5.  
  6.     {$IFDEF Pokus}
  7.     Application.CreateForm(TfrmMainFormFOC, frmMainFormFOC);
  8.     {$ENDIF}
  9.     Application.Run;
  10.   end;

Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline vandrovnik

  • Guru
  • *****
  • Příspěvků: 781
  • Karma: 43
    • Verze Delphi: 10.3
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #21 kdy: 20-09-2019, 19:37:28 »
Řádek {$I Pom.inc} je tam zásadní :-)

Aby nehlásil chybu, je pak potřeba vytvořit soubor Pom.inc a do něj dát:
Kód: Delphi [Vybrat]
  1. {$UNDEF Pokus}

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4438
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Vytvorenie formulára bez pridania do automaticky vytváraných
« Odpověď #22 kdy: 20-09-2019, 19:48:21 »
Aha, to bolo potrebné hneď napísať. To sa spomína v odkaze, ktorý dal pf1957 :)
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.