(new in Rev4.00)
MQListBox クラスはリストを表示するウィジェットを管理します。MQWidgetBaseクラスを継承しています。
継承元クラスで定義されるメンバ関数はそのクラスの記述を参照してください。
クラス | |
MQListBox | コンストラクタ |
~MQListBox | デストラクタ |
メンバ関数 | |
GetCurrentIndex | カレントインデックスの取得 |
SetCurrentIndex | カレントインデックスの設定 |
AddItem | 項目の追加 |
DeleteItem | 項目の削除 |
ClearItems | 項目の全消去 |
GetItemCount | 項目数の取得 |
GetItem | 項目の取得 |
SetItem | 項目の設定 |
GetItemTag | 項目の任意値の取得 |
SetItemTag | 項目の任意値の設定 |
GetItemSelected | 項目の選択状態の取得 |
SetItemSelected | 項目の選択状態の設定 |
GetItemHint | 項目のヒント文字列の取得 |
SetItemHint | 項目のヒント文字列の設定 |
GetVisibleRow | 表示行数の取得 |
SetVisibleRow | 表示行数の取得 |
GetLineHeightRate | 一行の高さの割合取得 |
SetLineHeightRate | 一行の高さの割合設定 |
GetVertScrollVisible | 縦スクロールバーの表示取得 |
SetVertScrollVisible | 縦スクロールバーの表示設定 |
GetMultiSelect | 複数選択の可否取得 |
SetMultiSelect | 複数選択の可否設定 |
ClearSelection | 全選択解除 |
MakeItemVisible | 指定項目を可視領域内に表示 |
イベント | |
AddChangedEvent | 状態が変更された時のイベントを追加 |
AddDrawItemEvent | 項目の描画時のイベントを追加 |
MQListBox::MQListBox();
MQListBox::MQListBox(int id);
コンストラクタです。
virtual MQListBox::~MQListBox();
デストラクタです。仮想関数として定義されます。
int MQListBox::GetCurrentIndex();
現在選択されている項目の番号を取得します。
void MQListBox::SetCurrentIndex(int value);
現在選択されている項目の番号を設定します。
int MQListBox::AddItem(const std::wstring& text);
int MQListBox::AddItem(const std::wstring& text, __int64 tag);
項目を追加します。
項目には表示される文字列とは別に任意の値を割り当てることができます。
void MQListBox::DeleteItem(int index);
指定したインデックスの項目を削除します。
削除したインデックス以降の番号の項目は一つずつインデックスが繰り上がります。
void MQListBox::ClearItems();
すべての項目を削除します。
int MQListBox::GetItemCount();
項目の数を取得します。
std::wstring MQListBox::GetItem(int index);
指定した項目の文字列を取得します。
void MQListBox::SetItem(int index, const std::wstring& text);
指定した項目の文字列を設定します。
__int64 MQListBox::GetItemTag(int index);
指定した項目に割り当てられた任意の値を取得します。
void MQListBox::SetItemTag(int index, __int64 tag);
指定した項目に任意の値を割り当てます。
bool MQListBox::GetItemSelected(int index);
指定した項目の選択状態を取得します。
複数選択の状態を取得するにはSetMultiSelection()で複数選択できるようにしておく必要があります。
void MQListBox::SetItemSelected(int index, bool selected);
指定した項目に選択状態を設定します。
複数選択の状態を取得するにはSetMultiSelection()で複数選択できるようにしておく必要があります。
std::wstring MQListBox::GetItemHint(int index);
指定した項目のヒント文字列を取得します。
void MQListBox::SetItemHint(int index, const std::wstring& hint);
指定した項目のヒント文字列を設定します。
int MQListBox::GetVisibleRow();
高さの計算時に用いる表示行数を取得します。
実際に表示される行数とは必ずしも一致しません。
void MQListBox::SetVisibleRow(int value);
高さの計算時に用いる表示行数を設定します。
実際に表示される行数とは必ずしも一致しません。
double MQListBox::GetLineHeightRate();
一行の高さを標準の高さに対する割合で取得します。
void MQListBox::SetLineHeightRate(double value);
一行の高さを標準の高さに対する割合で設定します。
bool MQListBox::GetVertScrollVisible();
縦スクロールバーを表示するかどうか取得します。
void MQListBox::SetVertScrollVisible(bool value);
縦スクロールバーを表示するかを設定します。
bool MQListBox::GetMultiSelect();
複数選択をできるかどうか取得します。
void MQListBox::SetMultiSelect(bool value);
複数選択をできるかどうかを設定します。
void MQListBox::ClearSelection();
複数選択用の選択状態をすべて解除します。
void MQListBox::MakeItemVisible(int index);
指定したインデックスの項目が画面のリスト領域内に表示されるようスクロール位置を調整します。
template<typename T> void MQListBox::AddChangedEvent(T *p, BOOL (T::*f)(MQWidgetBase*, MQDocument), bool prior = false)
ユーザーの操作により状態が変更されたときに発生されるイベントを追加します。
template<typename T> void MQListBox::AddDrawItemEvent(T *p, BOOL (T::*f)(MQWidgetBase*, MQDocument, MQListBoxDrawItemParam&), bool prior = false)
個々の項目が描画されるときに発生されるイベントを追加します。
BOOL T::f(MQWidgetBase* sender, MQDocument doc, MQListBoxDrawItemParam& param);
param内のXとWidthを変更してFALSEを返すことで、文字などの描画位置を変更することができます。
struct MQListBoxDrawItemParam { MQCanvas *Canvas; int ItemIndex; int X; int Y; int Width; int Height; };