Dialog jako komponenta?   zodpovězená otázka

Komponenty, WinForms, WinAPI

Zdravím,

snad jsem vlákno nenadepsal hloupě, ale nic lepšího mě nenapadlo. Chci se zeptat, jak lze docílit toho, aby dialog (např. openfiledialog) se neotevřel do okna, ale formulář toho dialogu by byl umístěn v nějakém kontaineru na formuláři mateřského formu. Některé aplikace to tak umějí. A pokud smím, rád bych si dovolil i druhou otázku, úzce související. Pokud mám dialog, dejme tomu opět openfiledialog, do jaké míry a jak jej lez upravovat. Tím myslím například měnit texty na jeho tlačítkách a přidávat na jeho formulář další komponenty. Například IrfanView má v openfiledialogu ještě oblast pro zobrazování miniatury vybraného obrázku. Mám takové tušení že se neobejdu bez Win32 API, protože mě nenapadá žádné .NET řešení.

Pokud Vás tedy něco napadá nebo máte vhodný link prosím o odpověď. Předem děkuji.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Umístit ovládací prvky z OpenFileDialog do formuláře skutečně nejde, neboť OpenFileDialog není nic jiného než wrapper do nějakého Win32 API (zajímalo by mne jaké aplikace které to umí máte na mysli). Taktéž rozšířit tento dialog bez dobré znalosti Win32 API nelze. Nic ovšem nebrání napsat si dialog vlastní s potřebnou funkcionalitou.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tak třeba PhotoShop CS3ka nabízí dva dialogy pro uložení, nabídne volbu Use OS dialog a něco jako Use PS dialog při ukládání.

Napsal bych si vlastní dialog, ale když jsem viděl, že software, který je v angličtině má na formu dialog s českými labely, chtěl jsem se o tom něco dozvědět.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Ano, to je nesporná výhoda použití systémového dialogu - tlačítka a další ovládací prvky budou automaticky lokalizovány v závislosti na jazykové verzi operačního systému.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Dobře, děkuji tedy za reakci.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback