Zobrazit plnou verzi příspěvku: Změna ikony v menu MNU

chlebovsky
04.12.2008, 17:44
Zdravím všechny Lispáky.
Potřeboval bych pomoct s malým problémem, teda doufám že má řešení.
Lze v menu ať mnu, cui nebo kdekoliv udělat tak ikonku která se bude zobrazovat, skrývat, popř. měnit.
 
Uvedu na příkladu.
Mám lištu a tam mám třebas 5 ikonek (I1 I2 I3 I4 I5) které mi nakreslí daný objekt.
Pak mám ale rozbalovací lištu a tam mám na výběr 2 ikonky a to I6 a I7 které mi určují zda se jedná o rovný nebo obloukový prvek.
když kliknu na ikonu I6 tak nastavím (setenv "TYP" "ROVNY") a když kliknu na I7 tak se mi nastaví (setenv "TYP" "OBLOUKOVY")
Tak a teď co potřebuju.

když (= (getenv "TYP") "ROVNY") tak aby jsem viděl jen I1 I2 a I3
když (= (getenv "TYP") "OBL....") tak aby jsem viděl jen I4 a I5
prostě takové interaktivní menu dle určitých proměnných.
 
Prostě jestli lze ikonu na liště zobrazovat, skrývat, jestli jí lze měnit dle proměnné i samotné BMP
 
 
ID_HELP [_Button("Popis", 16.BMP, 24.BMP)]^C^C(prikazy)
prostě jak do tohoto zapracovat podmínku pro skrytí a zobrazení popř pro samotný obrázek. Teda jestli to lze.
 
Předem moc děkuji.

PepaR
04.12.2008, 23:10
Mám takový dojem, že toto nelze ani v MNU, ani v CUI. U souborů menu nelze aplikovat podmínky, tak jako tomu je tomu u programovacích jazyků.
 
Pravděpodobně by to šlo řešit přes VBA nebo jinou aplikaci.

musil
05.12.2008, 05:58
Nevim jestli to pomuže,ale v 2000 jsem používal panel přispůsobný konkrétní práci které jsem aktivoval hlavním panelem.
Něco na způsob:pod tlačítko zapnutí,vypnutí vyditelnosti panelu

Mrázek
05.12.2008, 07:45
Udělejte si I1,I2aI3 do jedné lišty a I4,I5 do druhé. K příkazu pod ikonou I6 přidejte zobrazení první lišty a skrytí druhé, u I7 obráceně (žádný lisp, je to jen o definici příkazu). Nepamatuju si už přesně, jak se dělá, ale určitě to jde. Kdysi jsem měl takto strukturované menu, že mi kliknutí na ikonu zapínalo jeden ze čtyř panelů a ostatní tři skrývalo.

chlebovsky
05.12.2008, 12:36
Díky všem, ale myslím že můj problém přesně vyjádřil PepaR.
Další dvě odpovědi jsou vlastně totéž, ale neřeší to přímo můj problém.
Používám i toto na zobrazování, ale mám v programu zhruba 75 panelů po 20 tlačítkách, a kdybych měl pro každý udělat 2x2x2 = 8 variant, tak bych celý rok tvořil jen samé menu1 až menu menu600. Proto jsem chěl nějakým způsobem jen ovládat samotné ikonky. Změnit jim program je v pohodě, dle dané podmínky, jen se mi jednalo o to aby se měnila samotná ikona, popř. se úplně zhasla.
 
Ale nikde jsem nic nenašel ani na us forech takže si už taky  myslím že to nejde.
Každopádně všem moc děkuji.

Ferdinand
08.12.2008, 09:29
"Vícevrsvé" podmínky řešíme dialogem (s radiobuttony) - je to přehledný a jednoznačný.
...pardón, má být "vícevrstvé"...Ferdinand2008-12-15 11:49:31

chlebovsky
13.12.2008, 09:13
jo, dialogy jsou jasný, tam není problém, ale mě se jednalo čistě o samotné menu....
 
Každopádně díky moc.