Перейти к содержанию
    

Работа с GUI в Матлаб

Коллеги, столкнулся с таким непонятным поведением GUI.

image.png.cbf5519fb8b8380dc5df47e56712a302.png

В меню пользователя есть пункт "Файл" с помощью которого можно загрузить данные из бинарного файла в массив.

Так вот, если просто случайно провести указателем мыши по слову "Файл" то сразу открывается окно выбора файла, без нажатия ЛКМ.

Честно говоря уже достало. Матлаб R2016b под win10, в R2019b наблюдается то же самое. Кнопка "Старт" ведёт себя нормально.

Кто-то сталкивался с таким поведением? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

для элементов меню, которые являются непосредственно дочерними для окна , под функцией вызова подразумевается действие, которое должно выполняться при разворачивании списка подпунктов меню

поэтому это действие может выполняться, если при наведении должен был развернуться список подпунктов меню, даже если никаких подпунктов там нет

 

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

придётся делать лишний клик каждый раз при выборе файла, но это может оказаться лучше, чем неожиданные срабатывания когда не надо

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Большое Вам спасибо за подробный ответ! Я так и сделаю.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Коллеги, а как сделать чтобы вывод графика выполнялся в одно и то же окно?

Вот так работает:

figure(1);

plot(x,y)

Но тогда нельзя указать позицию окна на экране.

    figure(1,'MenuBar','None',...
        'Name','Out Data',...
        'NumberTitle','Off',...
        'Position',[1300,140,500,500]);

Такая запись приводит к ошибке, не понимает цифру 1.

Как описать вызов figure чтобы график всегда выводился в одно окно и позицию окна на экране можно было задать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 17.03.2023 в 11:12, _sda сказал:

figure(1,'MenuBar','None',...
        'Name','Out Data',...
        'NumberTitle','Off',...
        'Position',[1300,140,500,500]);

Такая запись приводит к ошибке, не понимает цифру 1.

Help Matlab-а?

f = figure;

f.Position(3:4) = [280 210];

 

figure(f);

plot(x,y)

Изменено пользователем Самурай

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Большое спасибо! Сейчас попробую.

Сколько пересматривал в хелпе, а этого не видел. Глаз замылился...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...