Case Structure i Menu

Jeśli masz coś do powiedzenia w sprawie LabVIEW napisz. Tutaj są tematy, których nie można uściślić do innych działów.
Awatar użytkownika
kancin
Posty: 55
Rejestracja: 08 sty 2008 11:10
Wersja środowiska: LabVIEW 8.6
Lokalizacja: Rzeszów, Mielec
Kontakt:

Case Structure i Menu

Post autor: kancin »

Witam,
Czy jest możliwość programowego dodania ramki do struktury Case?
Chodzi mi o to, że jak np. kliknę na jakiś przycisk to zostanie dodana kolejna ramka do struktury Case.
Chcę w ten sposób napisać program, w którym użytkownik sam mógłby dodawać funkcjonalności w programie.
Może nie tędy droga? hmmm

Pytanie drugie:
Jak zapisywać zmiany w menu, które zostały stworzone w programie.
Przykładowo dodałem do menu kilka wpisów ale po ponownym uruchomieniu mojego programu nie są one już widoczne.

Pozdrawiam
Kancin
Ostatnio zmieniony 27 lis 2008 14:21 przez kancin, łącznie zmieniany 2 razy.
Awatar użytkownika
Mikrobi
Posty: 1210
Rejestracja: 08 paź 2003 00:00
Wersja środowiska: LabVIEW 2017

Case Structure i Menu

Post autor: Mikrobi »

1. Nie ma takiej mozliwości.
2. Rozwiń określenie "menu": wykorzystujesz plik *.rtm z zapisanym menu dla kontrolki?
pozdrawiam
Mikrobi

LabVIEW Champion, CLD, CPI
Awatar użytkownika
wino
Posty: 549
Rejestracja: 23 gru 2005 00:00
Wersja środowiska: Nie mam LabVIEW
Lokalizacja: Kraków

Re: Case Structure i Menu

Post autor: wino »

1. oczywiście, że jest taka możliwość.... co prawda twoja droga jest zła, ale jest możliwość generowania case'a. W pod tym adresem jest toolkit http://forums.lavag.org/CR-Scripting-To ... t8399.html
Awatar użytkownika
jogurt_owocowy
Posty: 1317
Rejestracja: 30 lis 2004 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Kraków

Re: Case Structure i Menu

Post autor: jogurt_owocowy »

Chcę w ten sposób napisać program, w którym użytkownik sam mógłby dodawać funkcjonalności w programie.
oczywiście, że jest taka możliwość
Case'a dodać można, ale do niedziałającego programu, więc przychylam się do odpowiedzi Mikrobiego:
Nie ma takiej mozliwości.
Jeśli chodzi o program, którym użytkownik może dodawać własne funkcjonalności, to lepiej to zrobić w oparciu o subviaje-pluginy z dobrze przemyślanym interfejsem.
Awatar użytkownika
kancin
Posty: 55
Rejestracja: 08 sty 2008 11:10
Wersja środowiska: LabVIEW 8.6
Lokalizacja: Rzeszów, Mielec
Kontakt:

Re: Case Structure i Menu

Post autor: kancin »

Mikrobi - tak wykorzystuję plik *.rtm ale używam bloczków działających w programie do dodawania elementów menu. W trakcie działania programu wszystko jest ok ale po jego ponownym uruchomieniu nie ma śladu po zaistniałych zmianach. Może zapisywać zmiany do zmiennej globalnej, ale jak w przypadku gdy dodaje więcej niż jeden element menu?
Wino - You do not have permission to download this file
...Jak to ściągnąć???
Jogurt - mógłbyś bardziej uszczegółowić wypowiedz? W jaki sposób zrobić taki plugin? Chodzi mi o to, żeby np. użytkownik w miarę czasu mógł sobie dodać do programu bloczek z obsługą innego urządzenia...przykładowo kolejnej karty pomiarowej!
Ostatnio zmieniony 28 lis 2008 09:35 przez kancin, łącznie zmieniany 2 razy.
Awatar użytkownika
wino
Posty: 549
Rejestracja: 23 gru 2005 00:00
Wersja środowiska: Nie mam LabVIEW
Lokalizacja: Kraków

Re: Case Structure i Menu

Post autor: wino »

hmm. "dasz mi 5 to ci powiem"

to jest forum, może trzeba na przykład sie na nie zalogować i potem dopiero ściągnąć, a no i MUSISZ najpierw wejść TU, potem TU, a potem TU, a dopiero potem możesz zalogować się i ściągnąć.


Dobra to jeszcze tak głupio spytam. Po co chcesz, żeby użytkownik, mógł dodać pomiar na drugiej karcie?
Awatar użytkownika
kancin
Posty: 55
Rejestracja: 08 sty 2008 11:10
Wersja środowiska: LabVIEW 8.6
Lokalizacja: Rzeszów, Mielec
Kontakt:

Re: Case Structure i Menu

Post autor: kancin »

Mam zrobić uniwersalny program do wzorcowania kart i multimetrów i chcę żeby użytkownik w przyszłości mógł dodawać moduły.
Awatar użytkownika
jogurt_owocowy
Posty: 1317
Rejestracja: 30 lis 2004 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Kraków

Re: Case Structure i Menu

Post autor: jogurt_owocowy »

W jaki sposób zrobić taki plugin?
Abstrahując od Twojej aplikacji, wyobraź sobie program, który ma zrobić pewne operacje na sygnale np. zrobić analizę częstotliwościową i znaleźć składową o maksymalnej mocy (nie wiadomo po co, ale jako przykład może być).
Ĺąródła tego sygnału mogą być różne: może to być sygnał z wejścia karty dźwiękowej, może to być sygnał z karty pomiarowej czy wreszcie może to być sygnał symulowany (z innego VIaja, w którym ustawiamy jego parametry). Teraz robisz rdzeń Twojej aplikacji robiący analizę i znajdujący najmocniejszą częstotliwość oraz dodatkowo zestaw sterowników (subviaje), z których każdy obsługuje inne Ĺşródło sygnału. Jeden zbiera sygnał z karty dĹşwiękowej, inny z karty pomiarowej, a jeszcze inny otwiera okno, w którym użytkownik definiuje sygnał symulowany. Co ważne: każdy z tych subviajów zwraca sygnał w ujednoliconej postaci (np. w zmiennej typu waveform), a wszystkie są zapisane w katalogu o nazwie np. drivers.
Teraz uruchamiasz swoją aplikację-matkę, która sprawdza katalog drivers i w zależności od jego zawartości tworzy listę pt. "Dostępne Ĺşródła sygnału". Użytkownik wybiera z listy Ĺşródło, aplikacja matka wywołuje wybrany sterownik (dynamicznie - np. przez Call By Reference Node) i dostaje gotowe do przetworzenia dane w postaci waveforma, przetwarza je i nie zastanawia się skąd one pochodzą.
Jeśli użytkownik chce dołożyć nowe Ĺşródło sygnału, tworzy nowy sterownik (odczytujący dane np. z oscyloskopu i zwracający je w postaci waveforma), po czym kopiuje go do katalogu drivers. Teraz uruchamiasz swoją aplikację-matkę i masz dostępne na liście nowe Ĺşródło sygnału.
Oczywiście strukturę takiej aplikacji trzeba wcześniej dokładnie przemyśleć opierając się na konkretnych wymaganiach.
Pozdrawiam ]
Ostatnio zmieniony 28 lis 2008 12:52 przez jogurt_owocowy, łącznie zmieniany 4 razy.
ODPOWIEDZ