Необъяснимое поведение VI. Event'ы и кнопки.

Обсуждение, связанное с разработкой ПО верхнего уровня

Re: Необъяснимое поведение VI. Event'ы и кнопки.

Postby Artem.spb on 12 Feb 2016, 07:15

для понятности и наглядности можно привести аналогию с очередями.
q.png

Из соображений логичности можно подумать, что первые 10 секунд в очередь не должны ставиться данные (ведь их обработчик ещё не активен).
События - та же очередь в более удобном виде. Они регистрируются в системе как только я создал соответствующий фрейм (точнее, запустил программу) и при наступлении зарегистрированного события добросовестно помещаются в очередь. А уж потрудится ли их кто-нибудь обработать или нет, это уже вопрос корректности программы.
Artem.spb
expert
expert
 
Posts: 1295
Joined: 31 Jul 2011, 23:05
Medals: 2
Activity (1) Автор (1)
LabVIEW Version: 12,14,15
Karma: 224
CLD hardware I/O VIP freelance

Re: Необъяснимое поведение VI. Event'ы и кнопки.

Postby Blackman on 12 Feb 2016, 07:20

Но если одна кнопка должна по разному работать в разных случаях?


Для представленного варианта data flow Artem.spb уже дал ответ)

вариант второй (для новичка вынос мозга):
использовать динамическую регистрацию событий (палитра Dialog&UI -> events).
Blackman
leader
leader
 
Posts: 716
Joined: 17 Jan 2016, 15:02
Medals: 1
Activity (1)
LabVIEW Version: 6.1,8.5,20
Karma: 187

Re: Необъяснимое поведение VI. Event'ы и кнопки.

Postby AlexanderKonoval on 12 Feb 2016, 11:45

как показала личная практика, если надо собрать :vi: , в которой будет несколько ивент-структур, и одна и та же кнопка будет обрабатываться более, чем в одной из них, или же в одной и той же будут разные события на разные действия с контроллами - тут без динамической обработки событий не обойтись.

ставьте на блок-диаграмму register for events ноду, клацайте на ней правой клавишей - examples и разбирайтесь, если вам действительно надо сделать именно так и вы не видите других путей реализации. при помощи этой ноды вы сможете явно контроллировать, когда ивент структура должна начать принимать события в очередь, когда должна закончить и так далее.
колдооооовствооооо! (С)
AlexanderKonoval
developer
developer
 
Posts: 254
Joined: 03 Jan 2014, 19:37
Location: Украина, Киев
LabVIEW Version: 2016
Karma: 53

Previous

Return to Лицевая панель

Who is online

Users browsing this forum: No registered users and 3 guests

cron