MQDoubleSpinBoxクラス

(new in Rev4.00)

MQDoubleSpinBox クラスは実数の値を入力するウィジェットを管理します。MQWidgetBaseクラスを継承しています。

継承元クラスで定義されるメンバ関数はそのクラスの記述を参照してください。

クラス
MQDoubleSpinBox コンストラクタ
~MQDoubleSpinBox デストラクタ
メンバ関数
GetPosition 値の取得
SetPosition 値の設定
GetMin 最小値の取得
SetMin 最小値の設定
GetMax 最大値の取得
SetMax 最大値の設定
GetIncrement 増減値の取得
SetIncrement 増減値の設定
GetExponential 指数による増減の設定
SetExponential 指数による増減の設定
GetMantissa 仮数の取得
SetMantissa 仮数の設定
GetDecimalDigit 小数点以下の表示桁数の取得
SetDecimalDigit 小数点以下の表示桁数の設定
GetVariableDigit 表示桁数の可変の取得
SetVariableDigit 表示桁数の可変の設定
GetAutoDigit 自動表示桁数の取得
SetAutoDigit 自動表示桁数の設定
GetMaxDecimalDigit 最大桁数の設定
SetMaxDecimalDigit 最大桁数の設定
GetAlignment 文字の配置位置の取得
SetAlignment 文字の配置位置の設定
GetVisibleColumn 表示文字数の取得
SetVisibleColumn 表示文字数の設定
SetDisplayUnit 表示単位の設定
SetFocus フォーカスの設定
イベント
AddChangedEvent 値が変更された時のイベントを追加
AddChangingEvent 値を変更中のイベントを追加

MQDoubleSpinBox::MQDoubleSpinBox();

MQDoubleSpinBox::MQDoubleSpinBox(int id);

id
プラグイン外で生成されたウィジェットのID

コンストラクタです。


virtual MQDoubleSpinBox::~MQDoubleSpinBox();

デストラクタです。仮想関数として定義されます。


double MQDoubleSpinBox::GetPosition();

戻り値

値を取得します。


void MQDoubleSpinBox::SetPosition(double value);

value

値を設定します。

SetExponential()でtrueが設定されている場合、値は0より大きいものを指定する必要があります。


double MQDoubleSpinBox::GetMin();

戻り値
最小値

最小値を取得します。


void MQDoubleSpinBox::SetMin(double value);

value
最小値

最小値を設定します。

最小値が最大値より大きくなる場合、最小値と最大値は入れ替わって常に最小値<=最大値となります。

SetExponential()でtrueが設定されている場合、値は0より大きいものを指定する必要があります。


double MQDoubleSpinBox::GetMax();

戻り値
最大値

最大値を取得します。


void MQDoubleSpinBox::SetMax(double value);

value
最大値

最大値を設定します。

最大値が最小値より小さくなる場合、最小値と最大値は入れ替わって常に最小値<=最大値となります。

SetExponential()でtrueが設定されている場合、値は0より大きいものを指定する必要があります。


double MQDoubleSpinBox::GetIncrement();

戻り値
増減値

上下ボタンを1回クリックしたときに増減する量を取得します。


void MQDoubleSpinBox::SetIncrement(double value);

value
増減値

上下ボタンを1回クリックしたときに増減する量を設定します。

SetExponential()でalseが設定されている場合は値は増減値で加算または減算、trueが設定されている場合は値は増減値で積算または除算されます。


bool MQDoubleSpinBox::GetExponential();

戻り値
指数

上下ボタンをクリックしたときに値をどのように増減するかを取得します。

falseが設定されている場合は値は増減値で加算または減算、trueが設定されている場合は値は増減値で積算または除算されます。


void MQDoubleSpinBox::SetExponential(bool value);

value
指数

上下ボタンをクリックしたときに増減する量を設定します。

falseが設定されている場合は値は増減値で加算または減算、trueが設定されている場合は値は増減値で積算または除算されます。


double MQDoubleSpinBox::GetMantissa();

戻り値
仮数

仮数を取得します。

仮数が0より大きい場合、仮数を基準にして増減値が積算または除算された値のみが設定可能になります。仮数が0の場合、現在の値に対して単純に積算・除算されます。

仮数のデフォルト値は0です。


void MQDoubleSpinBox::SetMantissa(double value);

value
仮数

仮数を設定します。

仮数が0より大きい場合、仮数を基準にして増減値が積算または除算された値のみが設定可能になります。仮数が0の場合、現在の値に対して単純に積算・除算されます。

仮数のデフォルト値は0です。


int MQDoubleSpinBox::GetDecimalDigit();

戻り値
小数点以下の表示桁数

小数点以下の表示桁数を取得します。


void MQDoubleSpinBox::SetDecimalDigit(int value);

value
小数点以下の表示桁数

小数点以下の表示桁数を設定します。


bool MQDoubleSpinBox::GetVariableDigit();

戻り値
表示桁数の可変の可否

ユーザーの入力結果に応じて小数点以下の表示桁数を可変にするかを取得します。


void MQDoubleSpinBox::SetVariableDigit(bool value);

value
表示桁数の可変の可否

ユーザーの入力結果に応じて小数点以下の表示桁数を可変にするかを設定します。


int MQDoubleSpinBox::GetAutoDigit();

戻り値
自動表示桁数

整数・小数部合わせて自動的に表示される桁数を取得します。

整数部がこの桁数より多い場合は小数点以下は表示されません。


void MQDoubleSpinBox::SetAutoDigit(int value);

value
自動表示桁数

整数・小数部合わせて自動的に表示される桁数を設定します。

整数部がこの桁数より多い場合は小数点以下は表示されません


int MQDoubleSpinBox::GetMaxDecimalDigit();

戻り値
小数点以下の最大表示桁数

自動表示される小数点以下の桁数の最大数を取得します。


void MQDoubleSpinBox::SetMaxDecimalDigit(int value);

value
小数点以下の最大表示桁数

自動表示される小数点以下の桁数の最大数を設定します。


MQDoubleSpinBox::MQDoubleSpinBoxTextAlignment MQDoubleSpinBox::GetAlignment();

戻り値
文字の配置位置
[ALIGN_LEFT]
[ALIGN_CENTER] 中央
[ALIGN_RIGHT]

文字を表示する位置を取得します。


void MQDoubleSpinBox::SetAlignment(MQDoubleSpinBoxTextAlignment value);

value
文字の配置位置
[ALIGN_LEFT]
[ALIGN_CENTER] 中央
[ALIGN_RIGHT]

文字を表示する位置を設定します。


int MQDoubleSpinBox::GetVisibleColumn();

戻り値
横幅内に表示可能な文字数

横幅を計算するための文字数を取得します。


void MQDoubleSpinBox::SetVisibleColumn(int value);

value
横幅内に表示可能な文字数

横幅を計算するための文字数を設定します。

MQWidgetBase::SetHorzLayout()でLAYOUT_AUTOが指定されている場合、指定された文字数が横幅内に表示されるよう横幅が計算されます。ただし、プロポーショナルフォントの場合、文字によって横幅が異なるため、必ずしも指定した文字数が横幅内に表示されるとは限りません。


void MQDoubleSpinBox::SetDisplayUnit(MQDISPLAYUNIT unit);

unit
表示単位
[MQDISPLAYUNIT_DISABLED] 無効化
[MQDISPLAYUNIT_NONE] なし
[MQDISPLAYUNIT_MM] ミリメートル
[MQDISPLAYUNIT_CM] センチメートル
[MQDISPLAYUNIT_M] メートル
[MQDISPLAYUNIT_INCH] インチ
[MQDISPLAYUNIT_FEET] フィート

長さの表示単位を設定します。MQDISPLAYUNIT_DISABLED以外が指定された場合、ユーザーによって表示単位が変更されたときにウィジェットにも自動で変更が反映されます。

表示単位は画面の数値表示に反映されるだけで、GetPosition()/SetPosition()で取得・設定される値には影響しません。


void MQDoubleSpinBox::SetFocus(bool value);

value
フォーカス状態

フォーカス状態を設定します。

フォーカス状態になっている場合に、このウィジェットへキーボードメッセージが通知されます。

trueを指定した場合、既に他のウィジェットがフォーカス状態になっていればフォーカスはそのウィジェットからこのウィジェットに移動します。


template<typename T> void MQDoubleSpinBox::AddChangedEvent(T *p, BOOL (T::*f)(MQWidgetBase*, MQDocument), bool prior = false)

p
イベント通知先のウィジェット
f
イベント通知先のメンバ関数
prior
イベントの通知順序
[true] 最初に通知されるよう指定
[false] 最後に通知されるよう指定

ユーザーの操作により文字列が変更されたときに発生されるイベントを追加します。

キー入力により文字列が編集されたときにAddChangingEvent()が、Enterキーが押されたりTabキーやマウス操作によって他のウィジェットへフォーカスが移動したときにAddChangedEvent()が発生します。


template<typename T> void MQDoubleSpinBox::AddChangingEvent(T *p, BOOL (T::*f)(MQWidgetBase*, MQDocument), bool prior = false)

p
イベント通知先のウィジェット
f
イベント通知先のメンバ関数
prior
イベントの通知順序
[true] 最初に通知されるよう指定
[false] 最後に通知されるよう指定

ユーザーの操作により文字列が変更されている最中に発生されるイベントを追加します。

キー入力により文字列が編集されたときにAddChangingEvent()が、Enterキーが押されたりTabキーやマウス操作によって他のウィジェットへフォーカスが移動したときにAddChangedEvent()が発生します。