QLineEdit
フォームに「参照」ボタンを表示する必要があります。ユーザーがボタンをクリックするQFileDialog
と、開く必要があります。
これはかなり一般的なことですが、そのための既製のソリューションが見つかりません。Qt Designer で のようなウィジェットを期待してQFileSelect
いましたが、似たようなものは見つかりませんでした。
手で実装する必要がありますか?または、これを行う正しい方法は何ですか?
QLineEdit
フォームに「参照」ボタンを表示する必要があります。ユーザーがボタンをクリックするQFileDialog
と、開く必要があります。
これはかなり一般的なことですが、そのための既製のソリューションが見つかりません。Qt Designer で のようなウィジェットを期待してQFileSelect
いましたが、似たようなものは見つかりませんでした。
手で実装する必要がありますか?または、これを行う正しい方法は何ですか?
手で実装する必要がありますか?または、これを行う正しい方法は何ですか?
はい、それが一般的なことであることに同意しますが、残念ながら、これを自分で実装する必要があります。良いニュースは、次のような方法でこれを簡単に実行できることです。
MyMainWindow::createUI()
{
label = new QLabel("foo");
button = new QPushButton("Browse");
connect(button, SIGNAL(clicked()), SLOT(browse()));
layout = new QHorizontalLayout();
layout->addWidget(label);
layout->addWidget(button);
setLayout(layout);
}
void MyMainWindow::browse()
{
QString directory = QFileDialog::getExistingDirectory(this,
tr("Find Files"), QDir::currentPath());
if (!directory.isEmpty()) {
if (directoryComboBox->findText(directory) == -1)
directoryComboBox->addItem(directory);
directoryComboBox->setCurrentIndex(directoryComboBox->findText(directory));
}
}