Vítejte !   Přihlášení | Registrace
Hlavní menu
CATIA fórum.cz
Novinky
Seriál CATIA
Obecně o CAD
Novinky ze světa DS
Makra pro CATIA V5
Diskuse
Vytvořit téma
Koncepty
Seznam oblíbených
Soukromé zprávy
Pravidla
Live CHAT
VIP žádost
Základy Catia
Ke stažení
Doporučujeme
Pracovní příležitosti
Reklama a kampaně
O fóru
Nápověda

Formulář CatVBA

UživatelPříspěvek
Pavel Krsek

Poslat zprávu | Profil
Datum: 14.1. 2015 | Zobrazeno: 9455x
Konfigurace CATIA:

Text dotazu:
Dobrý den,
měl bych dotaz ohledně formuláře v CatVBA. Po spuštění makra a "naskočení" formuláře s ovládacími prvky se někdy stává (většinou po prvním startu po spuštění Catie), že nejde chvíli nic vykonat tj. zmáčknout tlačítko, vybrat hodnotu v listboxu, rozvinout combobox atd. Uživatel pak musí chvíli počkat popř. pomůže kliknout někam jinam mimo Catii a pak se vrátit - pak je již panel přístupný.
Zkoušel jsem příkaz:
CATIA.Interactive = True
ale ten bude asi k něčemu jinému.
Věděl by někdo prosím, kde může být problém a co by pomohlo?
Děkuji.

Ing Jan Cinert

Poslat zprávu | Profil
[#4895] | Publikováno: 14.01. 2015 - 09:39
Příkaz CATIA.Interactive slouží k tomu, aby CATIA přestala reagovat na jakékoliv povely od uživatele, tj. můžete si do ní klikat myší kam chcete a ona to naprosto ignoruje. Je to dobré pro případy, kdy v makru pracujete s výběrem a běží dlouho. Může se stát, že uživatel je netrpělivý a zkusí "někam" kliknout. V tu chvíli může zrušit aktuální výběr, se kterým makro pracuje, a vše skončí chybou. Tímhle to perfektně ošetříte.

Nesmíte to ale zapomenout vrátit zpátky, hlavně pokud máte nějaké ošetření, který by pak přeskočilo blok s tím příkazem. Uživatel by pak sice viděl krásný výsledek práce makra, ale už by nic víc neudělal (opravdu nejde nic, ani uložit data). U VBA maker to v případě že se makro zacyklí nebo "zakousne" je stejně jedno, protože musíte shodit celou Catii, ale u .NET maker se proces makra shodit nezávisle - pak je dobré mít vrácení interaktivity při iniciaci makra. Opětovným spuštěním tak Catii zase aktivujete.
Pavel Krsek

Poslat zprávu | Profil
[#4896] | Publikováno: 14.01. 2015 - 10:18
Děkuji za vysvětlení příkazu CATIA.Interactive.
Nicméně bych prosil hlavně o radu ohledně "zatuhnutého" formuláře viz. můj dotaz.
Ing Jan Cinert

Poslat zprávu | Profil
[#4897] | Publikováno: 14.01. 2015 - 11:17
Ta prodleva může být způsobena načítáním potřebných knihoven pro běh prostředí VBA. Podobně se chová catia při načítání typů objektů při hledání - vždy po startu při prvním spuštění makra se musí několik vteřin počkat. Možná jde toto nějak vynutit při startu catie, tj. pak by o chvíle déle trval start a spuštění makra už by bylo okamžité. Matně tuším, že mi kdysi někdo z oboru říkal, že něco takového možné, ale jak to provést nevím.

Jak velká je ta prodleva? Do 10 vteřin?
Pavel Krsek

Poslat zprávu | Profil
[#4898] | Publikováno: 14.01. 2015 - 11:50
Prodleva je cca 5 vteřin. Zajimavé je, ale že se to nechová pokaždé stejně. Tj. otevřu catii a hned spustim macro a někdy musím čekat danou prodlevu a někdy jsou prvky hned aktivni.
Ing Jan Cinert

Poslat zprávu | Profil
[#4899] | Publikováno: 14.01. 2015 - 13:12
Tak těch pět vteřin není žádná katastrofa, ale samozřejmě to někdy otravuje.

Stejně nepochopitelná je prodleva při ukončovaní práce, resp. zavírání velkého souboru / sestavy po dlouhé době práce. I když se vše uložené a jen se zavírá dokument, catia je schopná na "něco" čekat i 2-3 minuty.


Uživatel nepřihlášen

Pro zobrazení obsahu stránky / provedení akce (vytvoření nového téma, napsání odpovědi do diskuse apod.) musíte být přihlášeni.