2

興味があります。GUI ビルダー/デザイナーはどのように機能しますか? 私の推測 ( Java の場合) は、実際に JFrame を作成し、何らかの方法でイベントをオーバーライドすることです。ただし、これは推測にすぎません。洞察を提供できますか?

4

1 に答える 1

2

あなたはかなり強打しています...

Gladeでは、コンポーネントをドラッグ アンド ドロップできるフェイク ウィンドウがマウス/キーボード イベントを処理し、GUI 要素を配置するためのバックエンド呼び出しを行います。これらの要素は、「ボタンをクリックするとソース要素に移動する」などのハンドラにアタッチされます。

あなたがそれについて考えるとき、それはすべてかなり些細なことです。

グレードソースを見ると、それがどのように行われたかについての洞察が得られるかもしれません。

IIRC では、Glade が XML を記述し、それを libglade を使用してデザイナーにレンダリングします。あなたの d'n'ds が実際に要素を作成するのではありません。イベントは、UI 要素と内部デザイナー ハンドラーを含む XML ファイルを作成します。

幸運を

于 2009-06-16T10:24:29.400 に答える