列ヘッダーから並べ替え矢印を削除する必要があります。これは、列を呼び出すことで実行できset_sort_indicator(false)
ます。
矢印は表示されていませんが、矢印のスペースはまだ確保されているようです。列のタイトルがすべてのヘッダーを埋めるのに十分な大きさの場合、最後の部分 (矢印があるべき場所) が切り取られます。
タイトルをヘッダー全体に表示する方法はありますか?
列ヘッダーから並べ替え矢印を削除する必要があります。これは、列を呼び出すことで実行できset_sort_indicator(false)
ます。
矢印は表示されていませんが、矢印のスペースはまだ確保されているようです。列のタイトルがすべてのヘッダーを埋めるのに十分な大きさの場合、最後の部分 (矢印があるべき場所) が切り取られます。
タイトルをヘッダー全体に表示する方法はありますか?
よし、バグレポートを gtk に提出した。彼らは、それは問題ではなく、修正されないだろうと言いました.
私は他のグラフィカル ツールキット (windows、qt) を調べましたが、それらの実装は異なりますが、これは gtk チームの担当者にとっては問題ではないようです。
OK 、メソッドを使用して矢印を持たないset_clickable
列
に使用し、シグナルに使用して、現在の並べ替え順序を取得するために使用する関数にバインドし、を使用して逆の並べ替え順序を適用できます。signal_connect
clicked
get_sort_column_id
set_sort_column_id
これは GTK+ では少し奇妙に思えます。GtkTreeViewColumn のコードの関連部分をダウンロードして読みましたが、次のロジックを使用しているようです。
if (tree_column->show_sort_indicator ||
(GTK_IS_TREE_SORTABLE (model) && tree_column->sort_column_id >= 0))
gtk_widget_show (arrow);
else
gtk_widget_hide (arrow);
arrow
矢印を保持しているウィジェットはどこにありますか。これは、矢印ウィジェットが常に列のヘッダーを構成する水平ボックスにパックされ、表示されるべきでない場合は非表示 (削除されていない) であることを示しているようです。これは、まだ箱の中に残っていることを意味し、スペースを占有し、ラベルが切り取られます。
GTK+ バグトラッカーでこれに関する問題を検索することをお勧めします。何も見つからない場合は作成してください。