Я хочу прочитать некоторые переменные из файла .sh и передать их в массив (возможно, лучше вектор, потому что я не буду знать длину?). Переменные не являются окружающими, другими словами, я установлю их для каждой руки.
Кстати, эти переменные будут глобальными.
После этого я использую их, чтобы установить команду, значок и список имен для QListWidget.
Если я выбираю элемент и нажимаю кнопку, он выполняет команду и отображает результат в QTextEdit.
-> Вы можете увидеть код здесь. <- </a>
Как мне достичь этого и есть ли лучшее решение?
EDIT:
Извините, но английский не является моим родным языком, поэтому его трудно объяснить ...
Сначала файлы, которые:
Dialog.h, Dialog.cpp и Dialog.ui
Тогда Файлы, которые содержат функцию:
Query.h и Query.cpp
По крайней мере, скрипт, который я называю variables.sh, например.
Он содержит что-то вроде этого:
CmdList=("kcmshell4 --list|grep -q kcm_grub2",
"kcmshell4 --list|grep -q kcm_networkmanagement",
"which pastebunz",
"[ -z $ink3_ver ]")
NameList=("kcm_grub2",
"kcm_networkmanagement",
"pastebunz",
"Shellmenu")
IconList=(":/icons/icons/GNU.png",
":/icons/icons/networkmanager.png",
":/icons/icons/edit-paste.png",
":/icons/icons/menu.png")
Я не знаю, длина или содержание этих. Так что я должен использовать QVector, верно?
Функция запроса вызывается с помощью кнопки из диалогового окна.
Теперь я должен прочитать переменные из variables.h (это должно быть сделано при запуске программы ...).
for (int i = 0; i < ${#$cmdList[*]}; i++) // where '${#$cmdList[*]}' represents the
{ some magical stuff; } //legth or the $CmdList array written in bash ...
Тогда я должен использовать какой-то цикл в моей функции в Query.cpp, например
QVector<QString> vCmdList;
for (int i = 0; i < vCmdList.size(); i++)
{
vCmdList[i] = CmdList[i];
}
Надеюсь, теперь все прояснится, потому что я не знаю, как объяснить это более точно.
Спасибо за ваше терпение ^^