0

clutter1.0 を使用してステージまたはウィンドウの位置を設定するには? opengl のようにglutInitWindowPosition(0, 500)。ありがとう...

4

1 に答える 1

1

Clutter は、ウィンドウ システム固有の API のラッパーを提供しません。ステージは、シーン グラフ要素として、常に (0, 0) にあるように定義されているため、ClutterActor の set_position() メソッドを使用することはできません。

X11 を使用している場合は、X11 API を使用してステージ ウィンドウを移動できます。


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

  XMoveWindow (xdpy, xwin, 0, 500);

明らかに、X11 には手動でウィンドウを配置するという厄介な問題があります。実際にそれを行うべきではなく、実際にウィンドウを配置するためにウィンドウ マネージャーに任せるべきです。

Windows では、Stage ウィンドウの WHND を使用して取得し、 X11 での動作と同様にclutter_win32_get_stage_window()使用できSetWindowPos()ます。

Clutter はまだステージで使用される NSWindow も NSView も公開していないため、OS X では少しトリッキーです。そのため、Clutter の内部を少しハックする必要があります。

于 2011-12-26T15:51:06.800 に答える