В настоящее время я работаю над своим проектом для моей магистерской диссертации в мехатронике/робототехнике. Целью проекта является чтение в .stl-файле и вычисление пути для промышленного робота.QT Creator Main.cpp MainWindow.cpp
До сих пор все работало отлично для меня, но теперь мой профессор хочет, чтобы я разработал графический интерфейс, потому что до сих пор я просто использовал окно команд и написал все параметры вручную. Теперь я работаю с Qt Creator и разработал простой графический интерфейс для моего проекта.
В этом интерфейсе я получил RadioButton для файлов ascii. Чтобы мои функции работали, я должен определить, вводит ли пользователь файл ascii или двоичный файл. Но вот моя первая проблема. В окне команд я просто проверяю argv[]
на строку "-ascii"
. Если пользователь вводит это, флаг устанавливается в значение false.
if(0 == strcmp(argv[i], "-ascii")) {
isBinaryFormat = false;
}
Теперь я просто хочу сделать то же самое внутри графического интерфейса. Если флажок RadioButton установлен, флаг имеет значение false. Поэтому я написал следующее в файле main.cpp
if(ui->radioButton->isChecked()) {
isBinaryFormat = false;
}
Но щ неизвестна в главной функции. После поиска помощи в google я только что нашел учебники, записывающие код в файле mainwindow.cpp
. Но как я могу отправить информацию из файла mainwindow моей основной функции в файл main.cpp
.
Второй вопрос был бы, если я использую метод QFileDialog::getOpenFilename
, как я могу передать имя файла другим своим функциям. Идея заключается в том, что пользователь выбирает файл в любом месте своего ПК, и программа открывает файл и обрабатывает его. Но здесь у меня такая же проблема. Я могу бросить файл, но как я могу передать информацию от mainwindow.cpp
до моего main.cpp
.
Я благодарен за любую помощь, которую я получаю. Очень благодарен одинокий кодер
В main.cpp у меня есть функции и классы, которые я использую для обработки заданного .stl-файла. Здесь CAD-данные нарезаются слоями и создается файл с контуром для робота. Эта часть работает нормально, поэтому я не публиковал код других функций. Я не хотел показывать что-то хорошее, в то время как моя личная проблема связана с чем-то другим. Но я мог бы написать код моей основной функции, который я использовал в программе для командного окна. – user3794592
@ user3794592 переключение функций на новый файл и включение его в класс MainWindow по-прежнему будет лучшей идеей и упростит вашу жизнь. – deW1
Итак, вы имеете в виду, что я должен получить весь свой код из main.cpp в файл, например process.cpp/.h, и использовать его в mainwindow.cpp? – user3794592