フルスクリーンモードからウインドウモードへ変更する際のサイズ制限について
砂時 計 2015/01/05(Mon) 22:05
Nov 2014 v2 にて、フルスクリーンモードから
ウインドウモードに変更する際、config.ini に記載した画像サイズに対して
アスペクト比が異なるサイズを指定すると
SetFullscreen(false)が失敗します。
アスペクト比が一定でなくても良いソフトもあるため
アスペクト比が異なるサイズでも指定できるようにお願いできないでしょうか?
今はconfig.iniを既知として一旦同じ比率にしてからResize()しています。
// コード例
#include <Siv3D.hpp>
void Main() {
Font font(30);
GUI gui(GUIStyle::Default);
gui.setTitle(L"");
gui.addln(GUIText::Create(L"戻すときのサイズ"));
Optional<unsigned int> item = 1;
gui.addln(L"rb1", GUIRadioButton::Create({L"640x480",L"854x480"},item));
gui.setPos(4, Window::Height() - gui.getRect().h - 4);
Window::SetStyle(WindowStyle::Sizeable);
while (System::Update()) {
if (Input::KeyF11.clicked) {
bool result;
if (Window::IsFullSceen()) {
int width = (gui.radioButton(L"rb1").checkedItem.value_or(0) != 0) ? 854:640;
result = Window::SetFullscreen(false, { width, 480 });
//Window::Resize(800, 300);
}
else {
result = Window::SetFullscreen(true, { 640, 480 });
}
Println(L"SetFullscreen, ", result);
}
font(L"F11で切り替え").drawCenter(100);
Cone({ 1, 1, 5 },1,1).draw(Palette::Red);
}
}