1
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 ;

This code is to try to move postion, but I dont't know how to move the position of Gtk::Window under gtkmm4.

In GTK 3 , gtkmm 3, move() or set_position(Gtk::WIN_POS_CENTER) is used, but now I don't know how to move the postion.

2
  • Where in this code are you setting the position? Commented Sep 5 at 6:56
  • Not sure, but this post might be of some use. Commented Sep 5 at 10:14

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.