Uruchomienie aplikacji LabVIEW spod LabVIEW
- rafal
- Posty: 39
- Rejestracja: 12 lip 2004 00:00
- Wersja środowiska: LabVIEW 2010
- Lokalizacja: Grudziądz
Uruchomienie aplikacji LabVIEW spod LabVIEW
Witam
Jak można najprościej uruchomić spod działającej aplikacji inną aplikację? Mam na myśli panel (interfejs), w którym znajdowałyby się przyciski powodujące uruchomienie innej aplikacji LabVIEW (dokładnie coś takiego jest w Demo LabVIEW 6i - może w innych wersjach też).
Najlepiej, gdyby nowa aplikacja otwierała się w tym samym oknie.
Chodzi mi o najprostsze rozwiązanie.
Dzięki
Jak można najprościej uruchomić spod działającej aplikacji inną aplikację? Mam na myśli panel (interfejs), w którym znajdowałyby się przyciski powodujące uruchomienie innej aplikacji LabVIEW (dokładnie coś takiego jest w Demo LabVIEW 6i - może w innych wersjach też).
Najlepiej, gdyby nowa aplikacja otwierała się w tym samym oknie.
Chodzi mi o najprostsze rozwiązanie.
Dzięki
Witaj
Jeżeli masz jakiegoś VI'a i chcesz uruchomić z niego inny to należy ten 'inny' umieścić w programie głównym. można to zrobić przez wybranie z palety funkcyjnej (functions palette) opcji 'select a VI' i wybranie odpowiedniego VI'a lub po prostu wywoływany VI 'przeciągnąć' do Block Diagram głównego programu. Aby uruchamiał się po wciśnięciu przycisku należy go umieścić na przykład w strukturze 'case' - i do warunku podpiąć przycisk. Co do tego żeby wywoływany VI otwierał się w tym samym oknie - każdy VI ma swój Front Panel i szczerze wątpię aby udało się go wywołać w tym samym oknie - chyba ze pokombinujesz i np. ukryjesz panel wywoływanego VI'a i po wywołaniu uczynisz pewne kontrolki widoczne ... (jest kilka alternatywnych opcji - użycie 'tab control' i po wywołaniu VI'a zmienić 'Page').
Pozdrawiam
Jeżeli masz jakiegoś VI'a i chcesz uruchomić z niego inny to należy ten 'inny' umieścić w programie głównym. można to zrobić przez wybranie z palety funkcyjnej (functions palette) opcji 'select a VI' i wybranie odpowiedniego VI'a lub po prostu wywoływany VI 'przeciągnąć' do Block Diagram głównego programu. Aby uruchamiał się po wciśnięciu przycisku należy go umieścić na przykład w strukturze 'case' - i do warunku podpiąć przycisk. Co do tego żeby wywoływany VI otwierał się w tym samym oknie - każdy VI ma swój Front Panel i szczerze wątpię aby udało się go wywołać w tym samym oknie - chyba ze pokombinujesz i np. ukryjesz panel wywoływanego VI'a i po wywołaniu uczynisz pewne kontrolki widoczne ... (jest kilka alternatywnych opcji - użycie 'tab control' i po wywołaniu VI'a zmienić 'Page').
Pozdrawiam
[quote="PM"] Co do tego żeby wywoływany VI otwierał się w tym samym oknie - każdy VI ma swój Front Panel i szczerze wątpię aby udało się go wywołać w tym samym oknie - chyba ze pokombinujesz i np. ukryjesz panel wywoływanego VI'a i po wywołaniu uczynisz pewne kontrolki widoczne ... (jest kilka alternatywnych opcji - użycie 'tab control' i po wywołaniu VI'a zmienić 'Page'). Pozdrawiam[/quote] Tam gdzie siedzą konternery... W palecie Controls>> Containers jest Sub Panel, czyli kontrolka w której mozna otworzyć VI.
Do metody Insert VI należy podać referencję do pliku zawierającego VI, który chesz otworzyć.
pozdrawiam Mikrobi
Do metody Insert VI należy podać referencję do pliku zawierającego VI, który chesz otworzyć.
pozdrawiam Mikrobi
[quote="PM"]witam Rzeczywiście - Mikrobi ma tu całkowitą rację - mój błąd - da się w tym samym oknie o tworzyć nowy VI - nie pomyślałem o tym... [/quote] ...aczkolwiek do łatwych to już nie należy ;)
pozdrawiam Mikrobi p.s. a to przykład: [img]http://layer.uci.agh.edu.pl/~mikrobi/LA ... dCtrld.png[/img]
a panel wyglada tak:
[img]http://layer.uci.agh.edu.pl/~mikrobi/LA ... _Ctrlp.png[/img]
pozdrawiam Mikrobi
pozdrawiam Mikrobi p.s. a to przykład: [img]http://layer.uci.agh.edu.pl/~mikrobi/LA ... dCtrld.png[/img]
a panel wyglada tak:
[img]http://layer.uci.agh.edu.pl/~mikrobi/LA ... _Ctrlp.png[/img]
pozdrawiam Mikrobi
Witam
[quote]jak z pod Labview uruchomić całkiem niezależny program (zwykły exe) ?[/quote]
otóż program wykonywalny *.exe (który niekoniecznie jest programem napisanym w LabVIEW) można uruchomić przy pomocy 'system exec' - wybierając ten bloczek z palety funkcyjnej Functions Palette >> communication >> system exec.
Obsługa bloczka - patrz help.
Pozdrawiam
[quote]jak z pod Labview uruchomić całkiem niezależny program (zwykły exe) ?[/quote]
otóż program wykonywalny *.exe (który niekoniecznie jest programem napisanym w LabVIEW) można uruchomić przy pomocy 'system exec' - wybierając ten bloczek z palety funkcyjnej Functions Palette >> communication >> system exec.
Obsługa bloczka - patrz help.
Pozdrawiam
-
- Administrator
- Posty: 1315
- Rejestracja: 30 lip 2003 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Ruda Śląska
- Kontakt:
Uruchamianie programów
Witam
To co opisywali koledzy powyżej jest dostępne od LabVIEW 6.1.
Dla LabVIEW 6i proponuję użycie wywołania poszczególnych programów VI w głównej aplikacji. Okna można tak poustawiać że będą one zajmowały cały ekran, więc zasłonią główną aplikację, a wynik ich działania, może być spokojnie przekazany do głónego programu (jeśli jest taka potrzeba) po zakończeniu ich działania. Takie właśnie rozwiązanie zastosowałem w przypadku programu FME, który jest opisany w tym serwisie. Był to mój pierwszy program (zresztą zawierający masę programistycznych błędów - szczególnie dotyczących stylu programowania) więc nie polecam go do naśladowania, ale akurat to rozwiązanie powinno ciebie zadowolić. Wiem że to nie będą programy uruchamiane w tym samym oknie, ale w 6i tego nie można inaczej chyba zrobić (nic innego w tej chwili mi nie przychodzi do głowy).
Używałem tam funkcji z menu Aplication Control: Open VI Reference, Call by Reference Node, Close LV Object Reference. To mi dawało możliwość uruchamiania programów VI z mojej aplikacji. Zresztą jest tam w przykładach demo.
Pozdrawiam bogdani
To co opisywali koledzy powyżej jest dostępne od LabVIEW 6.1.
Dla LabVIEW 6i proponuję użycie wywołania poszczególnych programów VI w głównej aplikacji. Okna można tak poustawiać że będą one zajmowały cały ekran, więc zasłonią główną aplikację, a wynik ich działania, może być spokojnie przekazany do głónego programu (jeśli jest taka potrzeba) po zakończeniu ich działania. Takie właśnie rozwiązanie zastosowałem w przypadku programu FME, który jest opisany w tym serwisie. Był to mój pierwszy program (zresztą zawierający masę programistycznych błędów - szczególnie dotyczących stylu programowania) więc nie polecam go do naśladowania, ale akurat to rozwiązanie powinno ciebie zadowolić. Wiem że to nie będą programy uruchamiane w tym samym oknie, ale w 6i tego nie można inaczej chyba zrobić (nic innego w tej chwili mi nie przychodzi do głowy).
Używałem tam funkcji z menu Aplication Control: Open VI Reference, Call by Reference Node, Close LV Object Reference. To mi dawało możliwość uruchamiania programów VI z mojej aplikacji. Zresztą jest tam w przykładach demo.
Pozdrawiam bogdani
-
- Administrator
- Posty: 1315
- Rejestracja: 30 lip 2003 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Ruda Śląska
- Kontakt:
Zakłądki
Witaj
Rozważałeś może zamiast uruchamiania programów zrobić system zakładek przełączanych programowo ??
Wtedy w zależności co wybierzesz wyświetli ci się odpowiednia zakładka z panelem programu.
bogdani
Rozważałeś może zamiast uruchamiania programów zrobić system zakładek przełączanych programowo ??
Wtedy w zależności co wybierzesz wyświetli ci się odpowiednia zakładka z panelem programu.
bogdani
- rafal
- Posty: 39
- Rejestracja: 12 lip 2004 00:00
- Wersja środowiska: LabVIEW 2010
- Lokalizacja: Grudziądz
Zakładki raczej by nie pasowały do mojej pracy, ale wpadłem na inny pomysł. Programy się już odpalają (w nowym oknie - jako okna modalne), tylko chciałbym, żeby po odpaleniu podprogramu minimalizował się panel główny (bo wystaje on spoza podprogramów). Mój kolejny problem to: w jaki sposób można zminimalizować okno panelu sterowania umieszczonym w nim przyciskiem (zwyczajnym buttonem)?
Dzięki i pozdrawiam.
Dzięki i pozdrawiam.
Re: Uruchomienie aplikacji LabVIEW spod LabVIEW
A jak zrobic, żeby w subpanelu pojawiały sie różne VI's? Każdy subVI ma przyporządkowany przycisk.