Multiple Document Interface
-
Konstantin Sumenko
- expert
- Сообщения: 1439
- Зарегистрирован: 17 июл 2008, 12:20
- Награды: 2
- Версия LabVIEW: 2010
- Откуда: Moscow
- Поблагодарили: 1 раз
- Контактная информация:
Multiple Document Interface
Как обещал, выкладываю проект, демонстрирующий использование MDI в LabVIEW. Почему выбрана форма открытого проекта а не тулкита: определенные моменты, связанные с манипуляцией окнами, зависят от организации связей между потоками всего приложения и могут быть адаптированы под конкретную архитектуру.
Проект выполнен в версии 8.5 и содержит:
- Базовые обертки функций WinAPI для работы с дочерними окнами (папка MDI VI's)
- Открытый код примера
- Исполняемый файл примера (папка Application)
Особое внимание обратите на следующие SubVI:
- Start/Stop
- Set Background
- Open Chid
Советую придерживаться предложенной последовательности действий при создании дочернего окна, в противном случае возможны дефекты: мигание окна, размазывание окна, исчезновение окна и прочее. Никогда не закрывайте окно родитель при активных дочерних окнах- в лучшем случае вылетит LV.
О любых проблемах/предложениях/ошибках просьба писать в эту тему- будем думать.
Проект выполнен в версии 8.5 и содержит:
- Базовые обертки функций WinAPI для работы с дочерними окнами (папка MDI VI's)
- Открытый код примера
- Исполняемый файл примера (папка Application)
Особое внимание обратите на следующие SubVI:
- Start/Stop
- Set Background
- Open Chid
Советую придерживаться предложенной последовательности действий при создании дочернего окна, в противном случае возможны дефекты: мигание окна, размазывание окна, исчезновение окна и прочее. Никогда не закрывайте окно родитель при активных дочерних окнах- в лучшем случае вылетит LV.
О любых проблемах/предложениях/ошибках просьба писать в эту тему- будем думать.
- Вложения
-
- MDI_LabVIEW.zip
- (514.6 КБ) 302 скачивания
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Multiple Document Interface
Клёво! У меня всё работает
Отличный проект, только пока не определился с применением. Скажи где чаще всего ты это применяешь, в чём конкретно польза от этого?
У меня такой необходимости пока не возникало.
Отличный проект, только пока не определился с применением. Скажи где чаще всего ты это применяешь, в чём конкретно польза от этого?
У меня такой необходимости пока не возникало.
-
Konstantin Sumenko
- expert
- Сообщения: 1439
- Зарегистрирован: 17 июл 2008, 12:20
- Награды: 2
- Версия LabVIEW: 2010
- Откуда: Moscow
- Поблагодарили: 1 раз
- Контактная информация:
Re: Multiple Document Interface
В LabVIEW я его не применял еще, но в обозримых проектах буду обязательно. Примеры:
1) Динамические тулбары, плавающие панели (где sub panel или splitter уже не помощники)
2) Приложения в которых необходимо одновременно анализировать/редактировать несколько параметров и где размеры окон не фиксированы. Например, программы сбора данных, программы редакторы и т.п.
1) Динамические тулбары, плавающие панели (где sub panel или splitter уже не помощники)
2) Приложения в которых необходимо одновременно анализировать/редактировать несколько параметров и где размеры окон не фиксированы. Например, программы сбора данных, программы редакторы и т.п.
-
- leader
- Сообщения: 548
- Зарегистрирован: 20 авг 2009, 17:58
- Награды: 2
- Версия LabVIEW: 2011
- Контактная информация:
Re: Multiple Document Interface
здорово
а у меня не закрывает выбранное окошко
а у меня не закрывает выбранное окошко
We live in a graphical world.
Why not program in one?
Why not program in one?
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
-
- leader
- Сообщения: 548
- Зарегистрирован: 20 авг 2009, 17:58
- Награды: 2
- Версия LabVIEW: 2011
- Контактная информация:
Re: Multiple Document Interface
просто активное, попробуем из листа
We live in a graphical world.
Why not program in one?
Why not program in one?
-
- leader
- Сообщения: 548
- Зарегистрирован: 20 авг 2009, 17:58
- Награды: 2
- Версия LabVIEW: 2011
- Контактная информация:
Re: Multiple Document Interface
работает
я думаю что применение можно ноайти :)
я думаю что применение можно ноайти :)
We live in a graphical world.
Why not program in one?
Why not program in one?
-
Konstantin Sumenko
- expert
- Сообщения: 1439
- Зарегистрирован: 17 июл 2008, 12:20
- Награды: 2
- Версия LabVIEW: 2010
- Откуда: Moscow
- Поблагодарили: 1 раз
- Контактная информация:
-
Konstantin Sumenko
- expert
- Сообщения: 1439
- Зарегистрирован: 17 июл 2008, 12:20
- Награды: 2
- Версия LabVIEW: 2010
- Откуда: Moscow
- Поблагодарили: 1 раз
- Контактная информация:
Re: Multiple Document Interface
Я тут накидал маленькую программу с использованием скриптинга… думаю, что она не заработает в откомпилированном виде, но для общего развития вполне покатит. LV8.5
-
mzu2006
- doctor
- Сообщения: 2456
- Зарегистрирован: 16 авг 2008, 02:12
- Награды: 3
- Версия LabVIEW: 7.1 10 11 12
- Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
- Контактная информация:
Re: Multiple Document Interface
Не работает под 9.0 (sp1) Скриптинг установлен. Под 8.6 работает как-то забавно, стоит запустить "жертву" хоть 1 раз, как окошко жертвы открепляется от панели хозяина. Но, вообще, находка прикольная
Правила форума (Forum rules in Russian)
rm -rf /mnt/windows
rm -rf /mnt/windows
Re: Multiple Document Interface
На 9 пока не проверить. Пр запуск - знаю. :( В остальном, сам удивился!