WinForms a C++ – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

WinForms a C++ – C / C++ – Fórum – Programujte.comWinForms a C++ – C / C++ – Fórum – Programujte.com

 

marpit0
Stálý člen
2. 12. 2012   #1
-
0
-

Zdravím,

pustil jsem se do tvorby GUI aplikace v C++, kdy jsem zvolil použití WinForms, jednak proto, že mám s nimi předchozí zkušenosti z C# a také proto, že jsou přímo obsaženy ve VS. Měl bych však několik nejasností, které bych potřeboval pomoci objasnit. 

1, Mám pomoci VS vytvořený form a v main.cpp mám:

Application::EnableVisualStyles();
Application::SetCompatibleTextRenderingDefault(false); 
Application::Run(gcnew mainForm());

return 0;

Problém je, že před samotným spuštěním okna programu se otevře i okno příkazového řádku. Dá se jeho otevření nějakým způsobem zrušit? Vím, že když sestavím aplikaci přímo pomoci průvodce ve VS, tak se otevírá přímo okno programu, avšak už samotný vygenerovaný kód je dosti nepřehledný a obsahuje spousty (pro mě) zbytečné omáčky. 

2, Druhým mým problémem je fakt, jak VS pracuje s kodem aplikace. Samotné okno je obsaženo v hlavičkovém souboru, problémem však je, že když vytvořím nějakou událost, nevloží se obslužný kód do rovněž vygenerovaného cpp souboru, ale přímo do hlavičky, což je v rozporu se zásadami, jak správně psát programy v C++. Také je problém, že kdybych vytvořil obslužné funkce v cpp souboru a trpěl obsluhu událostí v hlavičkovém, nemám žádný elegantní způsob, jak tyto funkce zavolat.

Díky za rady, už jsem hledal všude možně a žádné řešení jsem nenalezl. 

Nahlásit jako SPAM
IP: 78.102.62.–
MarPit
liborb
~ Redaktor
+18
Guru
3. 12. 2012   #2
-
0
-

Už to tu bylo na fóru mockrát. Není žádný důvod psát novou aplikaci pod .NET v C++. Ta možnost je tam pro rychlejší přechod se starými aplikacemi, pokud by někdo takovou pošetilost chtěl dělat :).

Opravdu to nechceš dělat v C#, dosáhnout stejného výsledku a ušetřit si přitom spoustu starostí? :)

Nahlásit jako SPAM
IP: 188.75.135.–
marpit0
Stálý člen
3. 12. 2012   #3
-
0
-

#2 liborb
Jasně, že bych raději šel do C#, který umím, bohužel zadání zní, že to musí být v C++.  

Nahlásit jako SPAM
IP: 78.102.62.–
MarPit
liborb
~ Redaktor
+18
Guru
3. 12. 2012   #4
-
0
-

Konsolového okna by ses mě zbavit nastavením SubSystem, tj. vlastnosti projektu -> konfigurace -> Linker -> System -> SubSystem nastavit na Windows (/SUBSYSTEM:WINDOWS).

A to druhé je dané tím, že v C# se to taky nijak nerozděluje, prostě se to všechno smaží do .cs souboru. Buď ty to budeš přehazovat do .cpp souboru sám nebo si zvykneš :).

Nahlásit jako SPAM
IP: 188.75.135.–
marpit0
Stálý člen
3. 12. 2012   #5
-
0
-

#4 liborb
Zkoušel jsem to popřehazovat, ale jaksi to přestalo fungovat. Nicméně teď vím, že to jde, tak nad tím podumám. Dík za obě dvě rady. 

Nahlásit jako SPAM
IP: 78.102.62.–
MarPit
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 4 hosté

Podobná vlákna

Culture ve WinForms — založil VladislavK

Zmena pozadí u WinForms — založil Antonidas

[C#,WinForms] html do pdf — založil motorcb

Entita do DataTable (WinForms) — založil VladislavK

Doporučte GridControl pro WinForms — založil tom.chovanec

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý