Autor Téma: Uz mi to IDE zase pije krev :-(  (Přečteno 481 krát)

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 2739
  • Karma: 133
    • Verze Delphi: D2007, XE3, DX10
Uz mi to IDE zase pije krev :-(
« kdy: 26-02-2019, 06:53:10 »
V .dpr vytvarim instanci data modulu:
Kód: Delphi [Vybrat]
  1. Application.CreateForm(TXxxxxxxMachineModel, MachineModel);
A kdykoli pridam dalsi unit, tak mi to ten shit zmeni do neprelozitelne formy
Kód: Delphi [Vybrat]
  1. Application.CreateForm(TMachineModel, MachineModel);

>:( Nenapada nekoho, co by se s tim dalo udelat?

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 2739
  • Karma: 133
    • Verze Delphi: D2007, XE3, DX10
Re:Uz mi to IDE zase pije krev :-(
« Odpověď #1 kdy: 26-02-2019, 09:11:28 »
Jiste. Prestan pridavat unity ;D
Tak jsem to delal doposud. A kdyz jsme meli hutny projekt plny podmineneho prekladu, tak jsme tu uses klauzuli pred Delphi museli schovat do includu :-(

Ale ted podminene pouziti modulu nemam a v IDE zacal uz skoro fungovat automaticky reformat zdrojoveho kodu, tak jsem si rek, ze ho zkusim pouzivat.
No asi se vratim k osvedcene praxi a zase budu uses klauzuli editovat rucne.

Citace
Jinak k tomu chovani IDE; to si zkratka vezme nazev promenne instance predane volani CreateForm a prvni parametr typu tridy z nej po pridani prefixu T sestavi (opakovane, napr. i po zminovanem pridani noveho modulu; snad aby tim dokazali nasrat co nejsirsi skupinu uzivatelu).
No prestoze se kdysi Borland holetbal, ze se jedna o two-way nastroj, tak jim nikdy nebyl a specialne ten .DPR vzdycky kulhal za zbytekem IDE :-( Oni to delaji jako na urovni wizarda, ktery neni provazany s prekladacem - to je podobne, jako to reformatovani - to je taky v podstate plugin do editoru, ktery nic nevi o prekladaci a tabulce symbolu a kdyz unifikuje treba symboly a jako prvni je v unit pouzito TRUE, tak vsude nasazi TRUE, prestoze v systemu je to definovano jako True etc...

No zkratka reseni, aby se nereklo.


Offline JaroB

  • Guru
  • *****
  • Příspěvků: 986
  • Karma: 28
    • Verze Delphi: XE8, Seattle
Re:Uz mi to IDE zase pije krev :-(
« Odpověď #2 kdy: 26-02-2019, 09:23:03 »
Pokud přidávám unitu s formem, nedělám ji v projektu, ale mimo něj a umažu globální proměnnou s formem. Teprve pak přidám do dpr - nevytvoří se mi CreateFrm().

Jinak obecně dpr léta letoucí nesnáší ruční editaci
« Poslední změna: 26-02-2019, 09:46:30 od JaroB »

Online Radek Červinka

  • Administrátoři
  • Padawan
  • *****
  • Příspěvků: 2581
  • Karma: 103
    • Verze Delphi: D2007, DXE + 2 poslední
    • O Delphi v češtině
Re:Uz mi to IDE zase pije krev :-(
« Odpověď #3 kdy: 26-02-2019, 09:41:37 »
V .dpr vytvarim instanci data modulu:
Kód: Delphi [Vybrat]
  1. Application.CreateForm(TXxxxxxxMachineModel, MachineModel);
A kdykoli pridam dalsi unit, tak mi to ten shit zmeni do neprelozitelne formy
Kód: Delphi [Vybrat]
  1. Application.CreateForm(TMachineModel, MachineModel);

>:( Nenapada nekoho, co by se s tim dalo udelat?


Mi pomohlo toto:
Kód: Delphi [Vybrat]
  1.   Application.Initialize;
  2.   mojeprocedura;
  3.  Application.Run;
  4.  
kde mojeprocedura je vytvareni formularu pri startu.
Embarcadero MVP - Czech republic

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 2739
  • Karma: 133
    • Verze Delphi: D2007, XE3, DX10
Re:Uz mi to IDE zase pije krev :-(
« Odpověď #4 kdy: 26-02-2019, 11:00:19 »
Kód: Delphi [Vybrat]
  1.   Application.Initialize;
  2.   mojeprocedura;
  3.  Application.Run;
kde mojeprocedura je vytvareni formularu pri startu.
Kdyz jsem v project options zrusil automaticke vytvareni vsech formu a mojeprocedura dal do extra unit mimo .dpr, tak se zda, ze to funguje.