私はQInputDialog
と入力六角番号にしたい、とだけgetInt
、getDouble
、getItem
とgetString
があります。 getSring
だけが "a、b、c、d、e、f"のようにcharを取り込むことができます。しかし、この場合には、それが必要である、0~9||"a-f"
::のgetText
0
A
答えて
1
QSpinBox
がクライアント入力から番号を取得するように配向ウィジェットであり、これは使用することが望まれている数値ベースに示す方法setDisplayIntegerBase()
を有する取るだけgetString
を制限する何らかの方法がありますあなたが唯一のそのプロパティを有効にする必要がある内部QSpinBox
がありgetInt()
方法を見ればベース16
を使用することはそう、そこにQSpinBox
を取得する直接的な方法はありませんが、我々はfindchild()
メソッドを使用することができます。
#include <QInputDialog>
#include <QSpinBox>
static QString getHex(QWidget *parent,
const QString &title,
const QString &label,
int value = 0,
int min = -2147483647,
int max = 2147483647,
int step = 1,
bool *ok = Q_NULLPTR,
Qt::WindowFlags flags = Qt::WindowFlags()){
QInputDialog dialog(parent, flags);
dialog.setWindowTitle(title);
dialog.setLabelText(label);
dialog.setIntRange(min, max);
dialog.setIntValue(value);
dialog.setIntStep(step);
QSpinBox *spinbox = dialog.findChild<QSpinBox*>();
spinbox->setDisplayIntegerBase(16);
bool ret = dialog.exec() == QDialog::Accepted;
if (ok)
*ok = ret;
return spinbox->text();
}
例:
#include <QApplication>
#include <QDebug>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
qDebug()<<getHex(Q_NULLPTR, "title", "label", 0x1d, 0);
return 0;
}
スクリーンショット:
+0
これは私が探している方法です。あなたが私に与えるすべての助けに感謝します。 –
関連する問題
- 1. getText()。toString()vs(String)getText()
- 2. のgetText()
- 3. のgettextプログラム
- 4. Heroku gettextのインストール
- 5. "getText/setText"() "
- 6. gettextのはcygwinの
- 7. Djangoのgettextのは
- 8. EditTextフィールドのAndroid getText
- 9. カスタムダイアログからのgetText
- 10. gettextの別名と
- 11. GetTextはは()のEditText
- 12. ファイルシステムなしのGettext
- 13. Pythonとgettext
- 14. devexpress:aspxtextbox GetText()length
- 15. Gettextとロケール
- 16. JPanel .getText();問題
- 17. getText()からのカーソルが上書きされました。getText()
- 18. getText()のエラー。javaのreplaceAll()
- 19. Android:EditTextのgetTextメソッドの問題
- 20. GNU GetTextとXamarin Android
- 21. gettext翻訳なし
- 22. Gettext POファイル形式
- 23. のgetText()を返す空白
- 24. 子孫のないセレンgetText
- 25. GetTextの相対時間
- 26. C++ Builder(i18n)からのgettext
- 27. gettextプレースホルダの使い方は?
- 28. 組み込みシステムのgettext?
- 29. AsyncTask-法のgetTextは、UIスレッド
- 30. WebElementのgetText()はWinium-デスクトップ
今、私は私のカスタムダイアログを実現し、内容を制限するために正規表現を使用しています。 –
文字列または数値を返しますか? – eyllanesc