2017-01-26 10 views
0

Как перемещать окно было разработано дизайнером приложений MATLAB в центр экрана? В настоящее время я использую app.my_fig_main.Position, но эта функция доступна только для установки [left bottom width height], но я думаю, что если я запустил свое приложение на другом компьютере с различным разрешением экрана, у меня должно было быть что-то вроде movegui и установить его на center. movegui не работает в среде дизайнера приложений. В любом случае, чтобы сделать это в дизайнере приложений?Как переместить окно, разработанное дизайнером приложений MALAB в центр экрана?

ответ

1

Не уверен, что я неправильно понял ваш вопрос, но вы можете получить текущее разрешение с помощью функции figposition. например на моем ноутбуке:

>> figposition([0, 0, 100, 100]) 
ans = 
    0 0 1366 768 

указывает на разрешение 1366х768

Вы можете затем set(gcf,'position', ...) к позиции, которую вы хотите, например, что это центральный.

Вы можете даже использовать figposition прямо там, на самом деле, до set положение фигуры, используя проценты напрямую.


** EDIT: ** пример, согласно запросу:

% Create Figure Window (e.g. by app designer; it's still a normal figure) 
    MyGuiWindow = figure('name', 'My Gui Figure Window'); 

% Desired Window width and height 
    GuiWidth = 500; 
    GuiHeight = 500; 

% Find Screen Resolution 
    temp = figposition([0,0,100,100]); 
    ScreenWidth = temp(3); 
    ScreenHeight = temp(4); 

% Position window in center of screen, and set the desired width and height 
    set (MyGuiWindow, 'position', [ScreenWidth/2 - GuiWidth/2, ScreenHeight/2 - GuiHeight/2, GuiWidth, GuiHeight]); 
+0

После компиляции моего приложения, он возвращает эту ошибку: 'неопределенной функции 'gifposition' для входных аргументов типа«двойной «Нет проблем при запуске моего приложения в среде MATLAB. – user2991243

+0

у вас есть опечатка. фигура, а не gifposition. –