Как установить положение сцены или окна, используя clutter1.0?

Как установить положение сцены или окна, используя clutter1.0? Как в opengl glutInitWindowPosition(0, 500), Спасибо...

1 ответ

Clutter не предоставляет обертку вокруг специфического API оконной системы: Stage, как элемент графа сцены, всегда определен как (0, 0), поэтому вы не можете использовать для него метод set_position() ClutterActor.

если вы используете X11, вы можете использовать API X11 для перемещения окна сцены, например:


  Display *xdpy = clutter_x11_get_default_display ();
  Window xwin = clutter_x11_stage_get_window (stage);

  XMoveWindow (xdpy, xwin, 0, 500);

Очевидно, что в X11 возникает сложная проблема ручного размещения окон: вам не следует этого делать, и вам следует обратиться к оконному менеджеру, чтобы фактически расположить ваши окна.

в Windows вы можете получить WHND окна Stage, используя clutter_win32_get_stage_window() и использовать SetWindowPos() аналогично тому, как это работает на X11.

в OS X это немного сложнее, поскольку Clutter пока не раскрывает ни NSWindow, ни NSView, используемый Stage, поэтому вам придется немного взломать внутри Clutter.

Другие вопросы по тегам