0

からウィジェットが必要ですQComboBox。ユーザーはポップアップからアイテムを選択するか、linedit に直接入力できますが、入力が QComboBox のアイテムの範囲外になるのを防ぐにはどうすればよいですか? または、行編集でのテキスト入力は常に合法ですか?
ありがとう

4

1 に答える 1

2

QComboBox::setValidator(const QValidator*)メンバー関数を参照してください。

http://qt-project.org/doc/qt-4.8/qcombobox.html#setValidator

これにより、バリデーターを設定して、ユーザーがコンボ ボックスの行編集に入力する入力を制限できます。

Qt は 3 つのバリデーターを提供QIntValidatorします。入力を特定の範囲内の整数に制限します。QDoubleValidator入力を特定の範囲内で指定された精度の浮動小数点値に制限します。入力をQRegExpValidator特定の正規表現に制限します。検証のニーズがより複雑な場合は、サブクラスQValidator化して独自のものを作成し、それをコンボ ボックスにインストールすることもできます。参照: http://qt-project.org/doc/qt-4.8/qvalidator.html

于 2013-03-13T03:59:09.893 に答える