|
Сообщения\события в MATLAB, Как послать |
|
|
|
Dec 4 2008, 17:43
|
Участник

Группа: Участник
Сообщений: 30
Регистрация: 1-12-04
Пользователь №: 1 275

|
Всем доброго времени суток! Возник вопрос: как послать сообщение (message) какому-либо объекту GUI в MATLAB? К примеру, можно ли послать сообщение WM_MAXIMIZE для развертывания окна GUI? Перерыл весь хелп, ниче не нашел...
|
|
|
|
|
 |
Ответов
|
Dec 5 2008, 13:20
|

Знающий
   
Группа: Свой
Сообщений: 648
Регистрация: 11-02-06
Из: Санкт-Петербург
Пользователь №: 14 237

|
Цитата(Crusher @ Dec 4 2008, 20:43)  Всем доброго времени суток! Возник вопрос: как послать сообщение (message) какому-либо объекту GUI в MATLAB? К примеру, можно ли послать сообщение WM_MAXIMIZE для развертывания окна GUI? Перерыл весь хелп, ниче не нашел... Вопрос не имеет отношения к MATLAB. Послать сообщение можно любому окну, а объекты GUI в Windows - это те же окна, являющиеся дочерними окнами относительно главного окна приложения. Для этого нужное окно необходимо разыскать в иерархии всех окон системы (иерархия окон представляет собой дерево, в котором корнем является Desktop-окно). Когда-то писал для себя маленькую утилиту, позволяющую переместить и изменить размер любого окна в системе - попробуйте, возможно, она окажется полезной. Нужное окно в этой утилите разыскивается либо по полному имени, либо выбирается из иерархии окон - после этого можно задать ему новые размеры и координаты левого верхнего угла. (см. аттач)
WndResizer.zip ( 103.02 килобайт )
Кол-во скачиваний: 124
--------------------
Сделано в Китае. Упаковано в России.
|
|
|
|
|
Dec 5 2008, 17:32
|
Участник

Группа: Участник
Сообщений: 30
Регистрация: 1-12-04
Пользователь №: 1 275

|
Цитата(Demeny @ Dec 5 2008, 16:20)  Вопрос не имеет отношения к MATLAB. Послать сообщение можно любому окну, а объекты GUI в Windows - это те же окна, являющиеся дочерними окнами относительно главного окна приложения. Для этого нужное окно необходимо разыскать в иерархии всех окон системы (иерархия окон представляет собой дерево, в котором корнем является Desktop-окно). Когда-то писал для себя маленькую утилиту, позволяющую переместить и изменить размер любого окна в системе - попробуйте, возможно, она окажется полезной. Нужное окно в этой утилите разыскивается либо по полному имени, либо выбирается из иерархии окон - после этого можно задать ему новые размеры и координаты левого верхнего угла. (см. аттач)
WndResizer.zip ( 103.02 килобайт )
Кол-во скачиваний: 124Вы меня неправильно поняли...Задача ставилась так: в матлабе создаем некое окно GUI(средствами самого же матлаба), например, figure. Затем надо из матлабовского же скрипта послать сообщение этому окну, например, для его развертывания на весь экран. Ну или послать сообщение от одного окна матлабовского GUI другому...
Сообщение отредактировал Crusher - Dec 5 2008, 17:33
|
|
|
|
|
Dec 11 2008, 11:12
|
Участник

Группа: Участник
Сообщений: 30
Регистрация: 1-12-04
Пользователь №: 1 275

|
Цитата(shf_05 @ Dec 10 2008, 11:52)  дак вроде как через хендл делается. Через хэндл можно устанавливать определенные параметры окна\объекта (position, color и т.д.). Послать именно сообщение не получается, а нужных параметров в списке нету(например, нельзя задать в свойствах чтобы окно разворачивалось или сворачивалось). Вообще, есть подозрение что в матлабе этого в принципе нельзя сделать...
|
|
|
|
Сообщений в этой теме
Crusher Сообщения\события в MATLAB Dec 4 2008, 17:43    shf_05 Цитата(Crusher @ Dec 11 2008, 16:12) (нап... Dec 12 2008, 04:53     Crusher Цитата(shf_05 @ Dec 12 2008, 07:53) по-мо... Dec 12 2008, 13:58      shf_05 Цитата(Crusher @ Dec 12 2008, 18:58) стан... Dec 16 2008, 10:57       Crusher Цитата(shf_05 @ Dec 16 2008, 13:57) немно... Dec 22 2008, 13:29 D.I.M.A Добрый вечер.
Привожу свою реализацию данной зада... Dec 22 2008, 14:34 Crusher Цитата(D.I.M.A @ Dec 22 2008, 17:34) Добр... Dec 22 2008, 15:45  shf_05 +1
может быть можно наваять своих функций на С, и... Dec 24 2008, 08:53  Lelikk Цитата(Crusher @ Dec 22 2008, 18:45) Спас... Jan 9 2009, 18:59
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|