ArchiFORUM http://archiforum.cz/ |
|
GDL DATA I/O ADD-ON - dialog http://archiforum.cz/viewtopic.php?f=9&t=3117 |
Stránka 1 z 1 |
Autor: | forad [ úte dub 26, 2011 11:20 pm ] |
Předmět příspěvku: | GDL DATA I/O ADD-ON - dialog |
filename =data Fix = OPEN ("Text", filename, "separator=' '; mode =RO ,dialog") Jakým způsobem zajistit znovu otevření dialogu pro výběr třeba jiného souboru? Snažím se to udělat pomocí tlačítka UI BUTTON. Díky. |
Autor: | LubosC [ stř dub 27, 2011 8:22 am ] |
Předmět příspěvku: | Re: GDL DATA I/O ADD-ON - dialog |
dle meho musi dojit k uzavření kanálu pomocí close az pak mohu otevirat dalsi a nebo otevřít jiny s jiným číslem možná. |
Autor: | forad [ stř dub 27, 2011 11:13 pm ] |
Předmět příspěvku: | Re: GDL DATA I/O ADD-ON - dialog |
No jak si archicad natahne nejaky soubor, tak už jinej nechce, do té doby než mu zmením původní název na jiný pak křičí opet dialog. Jak ale tedy klikem na button generovat hodnoty promené ,,text,,? |
Autor: | jirat [ čtv dub 28, 2011 9:55 am ] |
Předmět příspěvku: | Re: GDL DATA I/O ADD-ON - dialog |
Každý button má(může mít) nějaké ID. Pokud budete nastavený typ buttonu na UI_FUNCTION, při kliknutí na button se do globální proměnné GLOB_UI_BUTTON_ID uloží ID tohoto buttonu. Potom stačí někde (v hlavním scriptu) kontrolovat jaká je hodnota globální proměnné GLOB_UI_BUTTON_ID a podle toho generovat textovou proměnnou a nebo rovnou otevřít příslušný soubor. Např. Kód: IF NOT(GLOB_UI_BUTTON_ID) THEN ... ELSE IF GLOB_UI_BUTTON_ID = 1 THEN ... ELSE ... ENDIF ENDIF Nebo ještě zjednodušit tím, že názvy souborů budou obsahovat ID tlačítka. Např. "Text0", "Text1", "Text2" atd. Potom můžete použít pouze 1 podmínku, a to když nebude zmáčknuté žádné tlačítko (nebude GLOB_UI_BUTTON_ID) Volání souboru bude potom vypadat např: Kód: IF NOT(GLOB_UI_BUTTON_ID) THEN filename = "Text0" ELSE filename = "Text"+str(GLOB_UI_BUTTON_ID, 1,0) ENDIF Vzhledem k tomu, že se GLOB_UI_BUTTON_ID může opětovným načtením knihovního prvku ztratit(změnit), je výhodnější uložit ji nebo název souboru do proměnné (přednastaveného parametru) pomocí funkce PARAMETERS Kód: PARAMETERS filename=filename Píšu to z hlavy (nemohu to otestovat), tak snad to bude fungovat |
Autor: | forad [ čtv dub 28, 2011 11:29 am ] |
Předmět příspěvku: | Re: GDL DATA I/O ADD-ON - dialog |
Super, díky za odpověď, tohle pomohlo: "Text"+str(GLOB_UI_BUTTON_ID, 1,0) ale jeste jeden problém, hodnota GLOB_UI_BUTTON_ID může nabývat jedné hodnoty např. = 1 , tzn. že mohu na tlačítko kliknout jen jednou. Podruhé už nereaguje dialog a hodnota buttonu se nemění. Pak tedy musí být filename = "Text"+str(GLOB_UI_BUTTON_ID+klik, 1,0) Jak tedy zajistit přičítání hodnoty do proměnné ,,klik,, při každém kliknutím na UI_BUTTON ? Tohle se mi nedaří řešit. Díky za odpoved |
Autor: | LubosC [ čtv dub 28, 2011 1:42 pm ] |
Předmět příspěvku: | Re: GDL DATA I/O ADD-ON - dialog |
pro menší počet klikani bych to obesel misto Např. "Text0", "Text1", "Text2" na Např. "Text0", "Text01", "Text011" takto : filename = filename+str(GLOB_UI_BUTTON_ID, 1,0) prípadne : klik = klik +1 filename = "text"+str(klik, 1,0) |
Autor: | jirat [ čtv dub 28, 2011 3:19 pm ] |
Předmět příspěvku: | Re: GDL DATA I/O ADD-ON - dialog |
Lepší bude uchovat aktuální číslo (klik) v nějaké proměnné (ideálně v parametru) a po stlačení buttonu pouze toto číslo o 1 zvětšit. Tím se vyřeší i výchozí hodnota (0) a nemusím testovat jestli je GLOB_UI_BUTTON_ID. V případě, že používám jediné tlačítko a chci jen přičítat, by to potom mohlo vypadat takto: Kód: IF GLOB_UI_BUTTON_ID THEN PARAMETERS klik = klik+1 ENDIF Pokud bych měl víc tlačítek, budu testovat, jakou má GLOB_UI_BUTTON_ID hodnotu a na to zvolím akci (například klik = klik-1, nebo klik = 0, atd...). POZN: Při testování mi to načítá o 2, asi se hlavní script provede 2x za sebou. http://www.archinvea.cz/gdl/button-pocitadlo.gsm |
Autor: | forad [ čtv dub 28, 2011 4:43 pm ] |
Předmět příspěvku: | Re: GDL DATA I/O ADD-ON - dialog |
tak pánové, klobouk dolů, díky moc!! povedlo se ,konečně trochu dústojnější otevírání souborů. Ikdyž ten script funguje opravdu 2x, tím pádem i dialog vyskočí 2x, ale to už nějak překousnu. Díky! |
Autor: | jirat [ čtv dub 28, 2011 11:35 pm ] |
Předmět příspěvku: | Re: GDL DATA I/O ADD-ON - dialog |
Jestli je opakování výrazu vlastnost (a ne chyba), tak by se to dalo opĕt testovat,použitím nějakého počítadla. Kód: counter=0 IF GLOB_UI_BUTTON_ID THED counter=counter+1 IF counter%2=1 THEN PARAMETERS klik = klik+1 ENDIF ENDIF |
Autor: | LubosC [ pát dub 29, 2011 9:56 am ] |
Předmět příspěvku: | Re: GDL DATA I/O ADD-ON - dialog |
A co teprve co se da vytvořit a naučit archicad pomoci API ) případne spojení API a GDL prvků. Kdysi jsem třeba řešil jak vepsat do razitka zony počet určitých objektu na dané zoně ( počet zon a objektů v patře byl velký) ručně a s možnou chybou sem vyplňoval razitko a počítal objekty přes hodinu . Dnes to umim na jedno kliknutí a bez chyby |
Autor: | jirat [ pát dub 29, 2011 10:41 am ] |
Předmět příspěvku: | Re: GDL DATA I/O ADD-ON - dialog |
Jo tak to bych se chtěl taky jednou naučit, ale už ni na to nezbývá dost času. Navíc je k tomu potřeba ještě nějaké softwarové vybavení a určitě nějaký certifikát od Graphisoftu, nemýlím-li se. |
Stránka 1 z 1 | Všechny časy jsou v UTC + 1 hodina [ Letní čas ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |