0

私はwxWidgetsを初めて使用するので、用語がオフになっている場合、または何か明白なことを求めている場合は、申し訳ありませんが、正しい方法で私を指してください。

作成したWebサービスのクライアントアプリを作成しています。リストタイプのUIに情報を表示したいのですが、いくつかの情報、画像、日付、特定の場所にいくつかのテキスト。

だから、そこにあります

  1. これを行うことができるいくつかの拡張ライブラリ
  2. wxListCtrlまたはその他の既存のライブラリをカスタマイズし、そこから継承します

私はフォームビルダーツールを使用していません。コード内の座標とサイズを直接コーディングしているだけです。

編集:

これが私が今やったことです、

コンストラクターで、

m_timeline = new wxListCtrl( this, wxID_ANY, wxPoint( -1, 30), wxSize( 950, 600 ), wxLC_REPORT );

m_timeline->InsertColumn(0, _("icon"));
m_timeline->InsertColumn(1, _("post_owner"));
m_timeline->InsertColumn(2, _("body), wxLIST_FORMAT_LEFT, 700);

その後、必要に応じて、

wxListItem tweet;
note.SetId(i);

m_noteTimeline->InsertItem( i, tweet );
m_noteTimeline->SetItem( i, 0, xxxxx);
m_noteTimeline->SetItem( i, 1, xxxxx );
m_noteTimeline->SetItem( i, 2, xxxx );

これがうまくいかないと言っているわけではありませんが、主に、

  1. むしろ、すべての情報を含む単一の列が必要です

  2. この実装では、各行にボタンを付けることはできません(Twitterクライアントの場合は、返信ボタンや削除などが必要になります)

  3. 本文に入れるテキストは複数行である可能性があり、機能していないようです。

4

2 に答える 2

3

また、リスト項目の各データを特別なフォント/スタイルで表示する必要がある場合は、wxHtmlListBox (おそらく仮想モード)を使用することもできます。

于 2012-11-27T19:30:03.193 に答える
0

一見すると、wxListCtrl はカスタマイズを必要とせずに必要なことを実行します。試してみましたか?どのような問題にぶつかりましたか?

列にボタンなどのさまざまなウィジェットのコレクションが必要な場合は、単一の列 wxFlexGridSizer を使用するのが最も簡単なことをお勧めします。

于 2012-11-27T17:06:50.053 に答える