Сенсорный монитор (панель)+Labview+Win7

Обсуждение, связанное с разработкой ПО верхнего уровня
Аватара пользователя
Mifodiy1977
beginner
beginner
Сообщения: 47
Зарегистрирован: 10 янв 2012, 14:00
Версия LabVIEW: 11
Контактная информация:

Сенсорный монитор (панель)+Labview+Win7

Сообщение Mifodiy1977 »

Помогите пожалуйста решить проблему. Планируется использовать сенсорный монитор для управления с панели посредством labview (например 2011). Монитор HP2310ti (но может быть и другой, а проблема, думаю, общая).
Проблема такая. Если в XP сенсорный монитор воспринимался как мышь и все события от него обрабатывались обычным образом, а именно MouseDown, MouseUP происходили при, соответственно, касании и убирании пальца с объекта, кнопки в режиме Switch Until Released нажимались при касании и отжимались при убирании пальца. То в WIN7 случилась фигня. То есть все нормально для стандартного виндового интерфейса. Монитор признался как сенсорная панель, и для винды все ОК. А вот в LabView начались проблемы. Событие MouseDown происходит одновременно с MouseUP при отпускании пальца с объекта, либо MouseDown происходит при касании пальцем и сдвиге пальца в области элемента управления. Аналогично с кнопками в режиме Switch Until Released - касаешься пальцем - никакой реакции, сдигаешь палец - нажимается, отпускаешь, отпускается. Если нажать и отпустить - импульсно нажимается. В общем неудобняк получается для управления какими-нибудь длительными процессами, ну например движениями механизма. Вопрос. Кто-нибудь что-нибудь делал с этой проблемой? До зарезу нужен передний фронт кнопки при касании экрана. Пробовал отключать жесты, мультитачи, не помогает, все равно передний фронт по отпускании.
Помогите советом. :help:
П.С. Рекомендации даунгрейда до XP не принимаются, ибо скоро этот способ будет невозможен по причине окончания поддержки XP микрософтом.
Заранее благодарен
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: Сенсорный монитор (панель)+Labview+Win7

Сообщение Pavel Krivozubov »

Я бы действовал в нескольких направлениях. Во первых может быть фишка в разрядности винды, если она 64 разрядная, то LabVIEW может некорретктно работать в ней, сам неоднократно сталкивался.
Во вторых - можно заменить элементы управления на какие-то другие: тумблеры, радиогруппы и т.д.
В третьих - можно дублировать события и ставить сработку например так же при попадании курсора в зону кнопки или еще что-нибудь.
Аватара пользователя
Mifodiy1977
beginner
beginner
Сообщения: 47
Зарегистрирован: 10 янв 2012, 14:00
Версия LabVIEW: 11
Контактная информация:

Re: Сенсорный монитор (панель)+Labview+Win7

Сообщение Mifodiy1977 »

Нет, винда 32-х разрядная. Это раз. Тумблеры и радиогруппы будут работать точно так же, ибо событие Mouse Down происходит одинаково со всеми элементами управления. Это два. Три - для управления движением нужно использовать именно кнопку, чтоб отпустил - и движение встало. Насчет события попадания курсора в область кнопки я подумаю. Но в таком случае становится невозможным управление от мыши, а хотелось бы иметь универсальный интерфейс. Насчет "еще что-нибудь" хотелось бы поподробнее. В LabView у объектов не так много событий.
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: Сенсорный монитор (панель)+Labview+Win7

Сообщение Pavel Krivozubov »

Mifodiy1977 писал(а): для управления движением нужно использовать именно кнопку, чтоб отпустил - и движение встало.
Хм, ну а нельзя при таком раскладе использовать обычную кейс структуру? Кнопка нажата - выполняется один кейс, кнопка отжата -другой..
Аватара пользователя
Mifodiy1977
beginner
beginner
Сообщения: 47
Зарегистрирован: 10 янв 2012, 14:00
Версия LabVIEW: 11
Контактная информация:

Re: Сенсорный монитор (панель)+Labview+Win7

Сообщение Mifodiy1977 »

Да, забыл добавить, возможно будет управление при помощи массива кнопок, а обрабатывать события для массива кнопок - еще тот геморрой.
Аватара пользователя
Mifodiy1977
beginner
beginner
Сообщения: 47
Зарегистрирован: 10 янв 2012, 14:00
Версия LabVIEW: 11
Контактная информация:

Re: Сенсорный монитор (панель)+Labview+Win7

Сообщение Mifodiy1977 »

Проблема не в обработке событий. Можно Кейс, Эвент. Проблема в самом событии Mouse Down - оно не возникает при касании объекта, оно возникает только в момент отпускания или при касании и сдвиге пальца. А уж кейс или эвент - это уже значения не имеет.
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5462
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 28 раз
Поблагодарили: 86 раз

Re: Сенсорный монитор (панель)+Labview+Win7

Сообщение IvanLis »

Mifodiy1977 писал(а):Да, забыл добавить, возможно будет управление при помощи массива кнопок, а обрабатывать события для массива кнопок - еще тот геморрой.
тут нет никакого геморроя :D
1. преобразуете бинарный массив (кнопок) в Int
2. в Case подается Int, можно перебрать все варианты, либо сгруппировать при необходимости
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: Сенсорный монитор (панель)+Labview+Win7

Сообщение Pavel Krivozubov »

Кейс отрабатывает появление TRUE. Как только TRUE появится он начнёт работать. Как только исчезнет - перестанет. Разве нет? :wink:
Аватара пользователя
Mifodiy1977
beginner
beginner
Сообщения: 47
Зарегистрирован: 10 янв 2012, 14:00
Версия LabVIEW: 11
Контактная информация:

Re: Сенсорный монитор (панель)+Labview+Win7

Сообщение Mifodiy1977 »

О Господи. Да, Да и Да, (я в лабвью программирую 10 лет, что такое кейс, я знаю), Но TRUE не появляется при касании изображения кнопки! А только при касании и сдвиге пальца или при касании и убирании пальца. Винда не дает событие нажатия кнопки при касании кнопки. Неужели я непонятно написал в первом посте? Проблема не в Лабвью. Я прошу решения проблемы с Виндой. Проблема на уровне винды, и связана она скорее всего с обработкой события нажатия правой кнопки мыши. То есть если долго жмешь, то получаешь щелчок правой кнопки мыши. Я эту функцию отключил. Да, правого щелчка теперь нет, но винда как будто все равно ждет этого долгого нажатия, просто не обрабытывает его. Нужно либо как-то сделать сенсорную панель мышью (не знаю как), либо найти обходной вариант (например через API винды). В общем все серьезно. А вы тут Кейсами кидаетесь :(
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Сенсорный монитор (панель)+Labview+Win7

Сообщение Eugen Graf »

Мифодий, возможно стоит обратить внимание на то, как работают любые другие программы в Винде с этой панелью, неужели они все так заедают? Значит либо панель хреновая, либо драйвер хреновый, либо Винда хреновая. При чём тут :labview: ?
Ну, а если всё это невозможно поменять, то значит нужно объяснить пользователю, что проблема в том то и том то и он, пользователь обязан с этим считаться.
Аватара пользователя
Mifodiy1977
beginner
beginner
Сообщения: 47
Зарегистрирован: 10 янв 2012, 14:00
Версия LabVIEW: 11
Контактная информация:

Re: Сенсорный монитор (панель)+Labview+Win7

Сообщение Mifodiy1977 »

Все прграммы так себя ведут. LabView я не виню (см. выше). Если панель не древняя, она будет распознана Виндой, как сенсорная панель и все будет ровно точно также. Вопрос в том, как это обойти. Винда плохая? :haha: Наверное, WIN7 professional OEM :D
Аватара пользователя
Mifodiy1977
beginner
beginner
Сообщения: 47
Зарегистрирован: 10 янв 2012, 14:00
Версия LabVIEW: 11
Контактная информация:

Re: Сенсорный монитор (панель)+Labview+Win7

Сообщение Mifodiy1977 »

В общем, вопрос видимо к тем, у кого реально есть в наличии обычный сенсорный монитор (не от нэйшенал инструментс). Те, у кого нет такой панели, видимо не поймут.
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Сенсорный монитор (панель)+Labview+Win7

Сообщение Eugen Graf »

У меня есть, но там заинсталлирован Win XP, проверить не могу.
Возможно стоит глянуть в сторону Acquire Input Device :vi: , он работает с драйверами на более низком уровне.
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Сенсорный монитор (панель)+Labview+Win7

Сообщение Eugen Graf »

Mifodiy1977 писал(а): Винда плохая? :haha: Наверное, WIN7 professional OEM :D
Ничего смешного, для некоторых людей это факт.
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: Сенсорный монитор (панель)+Labview+Win7

Сообщение Pavel Krivozubov »

Странно, вот проверил специально в семерке с 11 версией, события Down и UP работают не одновременно.. Может быть все-таки ошибка в программе?
Вложения
Untitled 1.vi
(12.92 КБ) 109 скачиваний
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Лицевая панель»