Я студент-программист, использующий Qt для создания таблицы читателей для моей компании.Этот читатель является и редактором, и конвертером.Он читает в файле .i позволяет редактировать таблицы текстового документа, а затем выдает файл .scf, который по сути представляет собой отдельный файл значений, сложенный под легендой, созданной с заголовками.Я отступаю ... В основном, импортируемый формат файла действительно трудно сканировать и считывать (в основном невозможно), поэтому мне хотелось бы изменить открытый файл preBuilt QFileDialog, чтобы включить дополнительный раскрывающийся список, когда для декларации выбираются более старые типы файловзаголовки их шаблонов.
Когда пользователь выбирает файлы расширения .i (тип файла опции 2), я хотел бы включить дополнительное раскрывающееся меню, чтобы позволить пользователю выбрать тип файла .i (шаблон)выбран).Таким образом, мне не нужно иметь дело с богом знает, сколько часов я пытаюсь найти способ индексировать все заголовки в таблице для каждого отдельного типа.В настоящее время моя функция importFile вызывает диалог, используя это:
QString fileLocation = QFileDialog::getOpenFileName(this,("Open File"), "", ("Simulation Configuration File(*.scf);;Input Files(*.prp *.sze *.i *.I *.tab *.inp *.tbl)")); //launches File Selector
Я ссылаюсь на Документация QFileDialog , чтобы попытаться найти решение, которое мне нужно, но безрезультатно.Спасибо за чтение моего поста и заранее спасибо за любое направление, которое вы можете дать по этому вопросу.
ОБНОВЛЕНИЕ 16 марта 2012 г .;Сначала я хотел бы поблагодарить Masci за его начальную поддержку в этом вопросе.Ниже приведено заявление о соединении, которое я получаю вместе с полученной ошибкой.
//Declared data type
QFileDialog openFile;
QComboBox comboBoxTemplateSelector;
connect(openFile, SIGNAL(currentChanged(const &QString)), this, SLOT(checkTemplateSelected()));
openFile.layout()->addWidget(comboBoxTemplateSelector);
![compile errors](https://i.stack.imgur.com/WE1ns.png)
Я также заметил, что мне не понравилось, как я добавил QComboBox в измененный макет диалога (что является второй ошибкой).Я действительно надеюсь, что я просто делаю что-то глупое, и это легко решить.
В ответ на комментарий tmpearce вот мой код заголовка;
#include <QWidget>
namespace Ui {
class ReaderTable;
}
class ReaderTable : public QWidget
{
Q_OBJECT
public:
explicit ReaderTable(QWidget *parent = 0);
~ReaderTable();
public slots:
void checkTemplateSelected();
void importFile();
void saveFile();
private:
Ui::ReaderTable *ui;
};
Спасибо за чтение и спасибозаранее за любой вклад в этот вызов!