Witam!
Mam oto nastepujacy problem. Stworzylem program gdzie uzywajac run-time menu uzytkownik moze odpalic rozne Sub-VI oferujace rozne opcje.
Problem pojawia sie gdy uzytkownik zamknie (poprzez nacisniecie krzyzyka w gornym prawym rogu) panel. Wtedy program znika ale sam program zostaje i nie ma mozliwosci operowania "oryginalnym" oknem.
Moge problem obejsc stosujac Event Structure i Panel Close? even gdzie uzywam Discard i po prostu normalnie koncze petle jednakze wydaje sie to za duze obejscie. Czy jest jakies prostsze rozwiazanie?
Pozdrawiam,
Michal
Zamkniecie panelu nie zamyka programu
- skoziate
- Administrator
- Posty: 245
- Rejestracja: 06 mar 2007 00:00
- Wersja środowiska: LabVIEW 2019
- Lokalizacja: Warszawa
- Kontakt:
Re: Zamkniecie panelu nie zamyka programu
Najprostszym rozwiązaniem jest wyszarzenie X w rogu (VI Properties > Window Appearance).
Możesz oczywiście obsługiwać zdarzenie wciśnięcia przycisku X. Discard typowo jest wtedy używany, jeśli chcesz na przykład wyświetlić okno dialogowe "Czy na pewno?" i wtedy w zależności od odpowiedzi robisz Discard albo nie. No i oczywiście jeśli odpowiedź jest "Tak" to należy zatrzymać wszystkie pętle, żeby VI zakończył działanie.
Jeśli dodatkowo to działa w EXE, to należy wywołać funkcję Quit LabVIEW.
Jeśli nie wyszarzysz X i nie obsłużysz zdarzenia jego wciśnięcia, to front panel zniknie, ale aplikacja będzie działała dalej.
Możesz oczywiście obsługiwać zdarzenie wciśnięcia przycisku X. Discard typowo jest wtedy używany, jeśli chcesz na przykład wyświetlić okno dialogowe "Czy na pewno?" i wtedy w zależności od odpowiedzi robisz Discard albo nie. No i oczywiście jeśli odpowiedź jest "Tak" to należy zatrzymać wszystkie pętle, żeby VI zakończył działanie.
Jeśli dodatkowo to działa w EXE, to należy wywołać funkcję Quit LabVIEW.
Jeśli nie wyszarzysz X i nie obsłużysz zdarzenia jego wciśnięcia, to front panel zniknie, ale aplikacja będzie działała dalej.
Pozdrawiam,
Sebastian
Sebastian
- rivui
- Posty: 27
- Rejestracja: 01 lut 2010 16:50
- Wersja środowiska: LabVIEW 8.5
- Lokalizacja: Kopenhaga
Re: Zamkniecie panelu nie zamyka programu
Czyli w skrócie muszę obsługiwać event. Nie ma innego automatycznego sposobu gdzie naciśnięcie 'X' spowoduje 'twarde' zamknięcie aplikacji kończąc wszystkie pętle etc.
Dziękuje za szybką odpowiedź!
Dziękuje za szybką odpowiedź!
- skoziate
- Administrator
- Posty: 245
- Rejestracja: 06 mar 2007 00:00
- Wersja środowiska: LabVIEW 2019
- Lokalizacja: Warszawa
- Kontakt:
Re: Zamkniecie panelu nie zamyka programu
Innego sposobu nie ma. Ty decydujesz o zachowaniu okna przez obsługę zdarzeń. Ale w sumie to tylko jeden dodatkowy event do obsługi, więc chyba nie katastrofa.
Pozdrawiam,
Sebastian
Sebastian