Strona 1 z 1

Dynamiczne tworzenie obiektów

: 03 lip 2007 07:31
autor: gryps
Witam

Potrzebuję dynamicznie tworzyć obiekty (controls i indicators) w LV, jeżeli ktoś coś wie na ten temat to bardzo proszę o pomoc.

ps. mam nadzieje ze jest to wogóle możliwe:)

Pozdrawiam

Re: Dynamiczne tworzenie obiektów

: 03 lip 2007 08:47
autor: Mikrobi
Rozwiń proszę.

Re: Dynamiczne tworzenie obiektów

: 03 lip 2007 08:55
autor: gryps
Witam

Chodzi o to że mam pustego vi'a, a po uruchomieniu go pojawi sie na nim na przykład button lub cokolwiek innego. Czyli to tak jakby w VC++ stworzyć obiekt przy pomocy konstruktora (najprościej mówiąc).

Mam nadzieje ze w miarę jasno napisałem o co mi chodzi:)

Pozdrawiam

Re: Dynamiczne tworzenie obiektów

: 03 lip 2007 09:36
autor: Mikrobi
Najkrócej sprawę ujmując: nie ma takiej opcji.

Re: Dynamiczne tworzenie obiektów

: 03 lip 2007 09:37
autor: gryps
Oki, wielkie dzięki.

Re: Dynamiczne tworzenie obiektów

: 03 lip 2007 10:09
autor: Koza
Nie ma takiej opcji, ale jest inna możliwość. Dość skomplikowana, no ale jeśli naprawdę tego potrzebujesz, to może się przydać (może na początek warto pochować kontrolki i je w odpowiednim momencie wyświelić/przesunąć?)

Robisz pustego VI z kontrolką, która wrzucasz w pętlę while i dodajesz opóźnienie, aby procesor miał chwilę wytchnienia. W kolejnym kroku usuwasz menu, suwaki, opcje run, stop, ustawiasz jako reentrant i pozycjonujesz odpowiednio na panelu aplikacji głównej. Teraz możesz z kontrolki w pewnym zakresie korzystać.

W aplikacji głównej korzystasz z Open VI reference, metod i własności otworzonego VI.
Propozycja zrobiona na szybko do obejrzenia w załączniku.

Pozdrawiam,
Koza

Re: Dynamiczne tworzenie obiektów

: 03 lip 2007 11:09
autor: maszup
Mozna tez wykorzystac tablice klastrów, jesli elementy, ktore chcesz tworzyc maja byc powtarzalne.

Re: Dynamiczne tworzenie obiektów

: 17 lip 2007 13:24
autor: vugie
Mikrobi pisze:Najkrócej sprawę ujmując: nie ma takiej opcji.
Ujmując sprawę jeszcze krócej: da się :)

Chyba juz to kiedyś pokazywałem...
Kluczowe bloczki (New VI i New VI Object) są w OpenG

Re: Dynamiczne tworzenie obiektów

: 17 lip 2007 21:44
autor: Mikrobi
vugie pisze:
Mikrobi pisze:Najkrócej sprawę ujmując: nie ma takiej opcji.
Ujmując sprawę jeszcze krócej: da się :)

Chyba juz to kiedyś pokazywałem...
Kluczowe bloczki (New VI i New VI Object) są w OpenG
To już nie jest prosta opcja tylko LabVIEW skryptowe.
Zewnętrzny toolkit nie supportowany przez NI z całym 'dobrodziejstwem' konsekwencji ;)

Re: Dynamiczne tworzenie obiektów

: 17 lip 2007 21:56
autor: jogurt_owocowy
Z tym "niesupportowaniem" to nie tak do końca.
Przykładowo: chcąc bawić się scriptingiem w LV 7.1 zmieniało się tu i tam w plikach *.ini i grało, w 8.0 - było gorzej (np. brak referencji do Diagramu), a w 8.2 nie gra wcale.
W zamian niektórzy "wybrańcy" mogą dostać od NI specjalną "licencję na skryptowanie" więc tak jakby powoli, nieśmiało LV Scripting wychodzi z podziemia.

Pozdrawiam

PS. Przynajmniej tak było jak próbowałem się bawić skryptowaniem w 8.2 kilka miesięcy temu. Jeśli ktoś ma jakieś nowsze wieści to będę wdzięczny :]

Re: Dynamiczne tworzenie obiektów

: 17 lip 2007 22:12
autor: Mikrobi
Trzeba przyznać, że vugie ma rację, jednak
skrypty są wewnętrznym narzedziem NI, które 'wyciekło' do ogólnego obiegu.
Zmieniają się z wersji na wersję środowiska, operują na zaawansowanych funkcjach i metodach silnika LabVIEW, które ulegają istotnym modyfikacjom. Faktem jest że Jim Kring i zespół OpenG zrobił korzystając ze skryptów bardzo dobre narzędzie OpenG Commander.