1

ComboBoxを使用してユーザーインターフェイスを作成しました。私は空き地を使用しているので、実行時に次のことを行っています

combo_box.set_model(liststore)
cell = gtk.CellRendererText()
combo_box.pack_start(cell,False)
combo_box.add_attribute(cell,'text',0)

そして、ComboBoxをクリックすると、セルレンダラーは画面の垂直方向のスペースをすべて占有します。ただし、リストストア内のアイテムの数を制限し、セルレンダラーがスクロールする必要がない場合、問題は解消されます。

これが問題の写真です:

問題

何が起こっている?

お時間をいただきありがとうございます。

4

1 に答える 1

1

私が知っていることから、これは設計上GTK +にあります(ただし、参照はなく、同様に完全に間違っている可能性があります)。アイデアは、ComboBoxまたはMenuにアイテムのリストがある場合、リストを画面から強制的に外すというものです。GTK +は、最初のアイテムをリストの一番上とマウスカーソルの下の両方に配置することを決定します。

これは、下部のアイテムに到達するためのスクロール効果があることを意味します。これは、GTK+がスクロール可能な空白を作成することで示します。

これを回避する最も簡単な方法は、アイテムをサブメニューに構造化することですが、これも小さなサイズの画面で失敗する可能性があります。

于 2011-12-16T19:51:01.363 に答える