Autor Téma: Form dotaz  (Přečteno 1071 krát)

Leo1

  • Host
Re:Form dotaz
« Odpověď #15 kdy: 15-03-2019, 17:40:19 »
Našel by se tu někdo ochotný, kdo by mi vysvětlil, co dělám špatně, že mi to vyhazuje tu chybovou hlásku, když odstraním to Application.CreateForm(TForm2, Form2) ze souboru Project1.dpr?

Online Jirka

  • Plnoletý
  • ***
  • Příspěvků: 145
  • Karma: 8
    • Verze Delphi: XE2
Re:Form dotaz
« Odpověď #16 kdy: 15-03-2019, 17:56:33 »
Našel by se tu někdo ochotný, kdo by mi vysvětlil, co dělám špatně, že mi to vyhazuje tu chybovou hlásku, když odstraním to Application.CreateForm(TForm2, Form2) ze souboru Project1.dpr?

Jestli máš telefon a TeamViewer , tak mi napiš PM

Leo1

  • Host
Re:Form dotaz
« Odpověď #17 kdy: 16-03-2019, 07:38:12 »
To mně take napadlo, že bude problem tu

Kód: Delphi [Vybrat]
  1. var
  2. Form2:tForm2;
Že to vytvařím jen pro udalost Button1Click .
Ale nikde jsem nenašel nějake info, kam to spravně dat.
Jsem zkoušel do public a ee  :-[

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4397
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Form dotaz
« Odpověď #18 kdy: 16-03-2019, 10:14:36 »
Veď Ti to tu celý čas obíjajú o hlavu ;D  Ten public si kúšal kde?. Lebo ak v niečom čo zrušíš, tak sa automaticky zruší všetko čo v ňom je. Viď tá pizza od Delfina.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Leo1

  • Host
Re:Form dotaz
« Odpověď #19 kdy: 16-03-2019, 15:58:02 »
Excellent
Rated 2 times
Tak jsem přišel na to, že nejlepší pro mě bude, když odinstalují delphi a začnu se věnovat příjemnějším věcem.
Sbohem.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4397
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Form dotaz
« Odpověď #20 kdy: 16-03-2019, 19:18:47 »
Tak si ma ukecal ešte na jednu, už konkrétnejšiu, reakciu. Budem možno vulgárny. V dobrom.
Počúvaj Ty lenivý zdochliak. Namiesto toho aby si sa popasoval s problémom, tak sa rašej vzdáš. Aké jednoduhé, pohodlné a rýchle! Neviem nič o Tebe, ale neverím, že si na tom horšie ako ja. Takže zdvihni svoj zadok, pohni rozumom a veci sa pohnú.


Pri čítaní Tvojich reakcií som nadobudol dojem, že si tunajšie príspevky buď vôbec nečítal, alebo len niektoré a aj to to letmo. Takže otvor oči i myseľ  a skús použiť mozog. Ideme na to.


Pre jednoduchosť. Máš MainForm a Form. MainForm je tá Delfinova šaktuľa doma a Form je škatuľa na námestí.
Napísal si, že si premennú dal do "public". To je informácia o ničom. Časť public (dokonca niekoľko :) ) majú všetky jednotky. Aj oba naše formuláre. Takže kde to vlastne máš?


Pokračujeme. To čo teraz napíšem si si mal naštudovať v helpe. Ako som Ti tu odkázal. Čo znamená, že niečo jej public. Prosím ostatných o zhovievavosť. Ide o základ. Nič iné, iba že to čo tam je budú vidieť všetci ostatní. To jest všetky súbory pas a to čo je vnich. Ale aby som to videl, musím splniť jednu základnú podmienku. Ja najprv musím vidieť samotnú jednotku. To sa zariadi tak, že ju budem citovať v časti uses.


K ostatným
  • (strict) private - vidí to len jeho vlastník. Jenotka, trieda...
  • (strict) protected - vidí to vlastník a každý kto je odvodený od toho vlastníka - potomok, dieťa
Naspäť k pizze. Pizzu si upečiem a dám ju do škatuli na námestí (Form). Nech ju každý vidí = časť public. To, že je na námestí ešte neznamená, že si na nej každý pochutná. Tu škatuľu by som musel otvoriť - uses. To urobím v MainForm. No fajn. Môžem vytvoriť Form a pochutnať si na pizze. Všetko funguje ako má. Až do jedného okamihu. Zničím Form. Prepojenie naň v MainForm mám. Ale on už neexistuje. Tak ako neexistuje nič z toho čo vytvoril. Takže pizza je fuč. A máš AV ako vyšitú.


Ostatné už máš za domácu úlohu. A nehovor, že sa to nedá, nejde to, je to príliš zložižé. Pravda je len jedna. Si lenivý popasovať sa s problémom a zapnúť aj mozog. Ak budeš mať také nutkanie, tak si znovu prečítaj celú diskusiu. Aj 10 i 100 x. Až Ti to raz zapne.


Prajem Ti pri čítaní veľa šťastia.
Odporúčanie: na internete sú viaceré materiály venované začiatočníkom. Tak si ich poriadne naštuduj. Vôbec nevadí ak sú v D7 či dokonca v D5. Princíp sa nezmenil. Netreba tomu venovať veľa. Stačí denne tak 8 - 12 hodín.
Na záver jedna rada. Založ si jeden projekt, kde budeš skúšať všetko čo si prečítaš! Aj tie najjednoduchšie veci. Aby Ti došli súvislosti.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Leo1

  • Host
Re:Form dotaz
« Odpověď #21 kdy: 17-03-2019, 14:01:40 »
Bych řek, že lenivého zdechlaka máš v trenkách.
Jsem to tu pročítal a bych řek že jsi uchyl, který tráví všechen svůj čas psaním programu jen pro sebe.
Pokud je toto prioritou Tvého života tak tě litují.

Pa - ne trávím na horách nebo na chatě s rodinou.
Přes týden 8 hod pracují, 2  hod cesta do práce a zpět, 6 hodin spím a zbytek se věnují ženě, dětem - zahradě, což ty asi nevíš co je, když jen hňupeš u počítače s tým Tvým programováním jen pro sebe.
Pokud mně napadne, abych si doma pustil počítač, tak jen proto abych si postahoval a upravil fotky z fotaku.

Chtěl jsem si jen trochu ulehčit v prací a napsat si jeden programem, takže nějaké to  tvoje "Netreba tomu venovať veľa. Stačí denne tak 8 - 12 hodín.tak 8 - 12 hodín" určitě ne.
I kdybych měl tolik volného času, raději ten čas věnují rodinně a zábavě.
Zamyslí se nad sebou, jsme tu jen jednou a život je krátký, na to, abychom se věnovali kravinám.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 4397
  • Karma: 39
    • Verze Delphi: XE7 professional
Re:Form dotaz
« Odpověď #22 kdy: 17-03-2019, 15:17:01 »

Pre istotu sa citujem
Citace
Tak si ma ukecal ešte na jednu, už konkrétnejšiu, reakciu. Budem možno vulgárny. V dobrom.
Chcel som Ťa vyprovokovať, ale nie takto. Tie urážky si si mohol odpustiť ;) . Teraz čítam jednu knihu a tento prístup bol pod jej vplyvom. Veril som, že to pomôže :(
Písal som, že o Tebe nič neviem. Tak ako Ty o mne. Ani to prečo si začal s Delphi. Teraz už čosi viem.
Ale k veci. Máš dve možnosti:
  • Vytvárať Form2 len v prípade potreby a po použití ho ihneď likvidovať.
  • Vytovoríš ho len raz a bude žiť počas životnosti programu. V tomto prípade ho musíš uložiť do premennej, ktorá bude definovaná vo Form1. A ten ju (Form2) aj musí zničiť. S Form2 budeš manipulovať pomocou metód Show a Hide. Pokiaľ k Form2 budeš pristupovať len z Form, tak môže byť aj v časti private. Stále sa bavím o Form a nie nejakej rutine, kde si nadefinuješ lokálnu premennú. Tú neuvidí nikto.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.