Anonymous
Как переместить GTK :: Положение окна после выполнения программы в GTKMM4
Сообщение
Anonymous » 05 сен 2025, 08:52
Код: Выделить всё
Glib::RefPtr< Gdk::Display > display = Gdk::Display::get_default() ;
if( nullptr == display )
{
return ;
}
Gdk::Rectangle geo ;
Glib::RefPtr< Gio::ListModel > monitors = display->get_monitors() ;
for( uint8_t pos = 0 ; pos < monitors->get_n_items() ; ++pos )
{
Glib::RefPtr< ObjectBase > item = monitors->get_object( pos ) ;
Glib::RefPtr< Gdk::Monitor > monitor = std::dynamic_pointer_cast< Gdk::Monitor >( item ) ;
if( nullptr == monitor )
{
continue ;
}
monitor->get_geometry( geo ) ;
break ;
}
int width , height ;
get_default_size( width , height ) ;
int posX = geo.get_width() / 2 - width / 2 ;
int posY = geo.get_height() / 2 - height / 2 ;
Этот код должен попытаться переместить позы, но я не знаю, как переместить позицию gtk :: window indy gtkmm4.>
Подробнее здесь:
https://stackoverflow.com/questions/797 ... der-gtkmm4
1757051554
Anonymous
[code]Glib::RefPtr< Gdk::Display > display = Gdk::Display::get_default() ; if( nullptr == display ) { return ; } Gdk::Rectangle geo ; Glib::RefPtr< Gio::ListModel > monitors = display->get_monitors() ; for( uint8_t pos = 0 ; pos < monitors->get_n_items() ; ++pos ) { Glib::RefPtr< ObjectBase > item = monitors->get_object( pos ) ; Glib::RefPtr< Gdk::Monitor > monitor = std::dynamic_pointer_cast< Gdk::Monitor >( item ) ; if( nullptr == monitor ) { continue ; } monitor->get_geometry( geo ) ; break ; } int width , height ; get_default_size( width , height ) ; int posX = geo.get_width() / 2 - width / 2 ; int posY = geo.get_height() / 2 - height / 2 ; [/code] Этот код должен попытаться переместить позы, но я не знаю, как переместить позицию gtk :: window indy gtkmm4.> Подробнее здесь: [url]https://stackoverflow.com/questions/79756432/how-to-move-gtkwindow-position-after-program-is-executed-under-gtkmm4[/url]