Обнаружил проблему
При клике на кнопку у меня вызывается слот openPDF() . Вот его код:
void Widget::openPDF()
{
string_path.clear();
string_path = QApplication::applicationDirPath() ; // получаем полный путь, в котором запущена программа
string_path.operator += ("/imageformats/spravdan.pdf") ; // добавляем к адресу положение пдф документа
QDesktopServices::openUrl(QUrl(string_path , QUrl::TolerantMode));
return ;
}
И все было бы хорошо, только если в полном пути у нас имеются нехороший символ, такой как пробел - то ссылка не открывается. Пытался заменить пробел на его урл аналог '%20' - безуспешно.
Отсюда вопрос:
Как заменить пробел чтобы ссылка заработала? или
Как сделать возможность запуска файла без указания апсолютного пути?
Bepec был прав. Действительно в QLabel есть свойство, которое разрешает открывать ссылки - но там тоже запуск получается только при указании апсолютоно пути вроде
f:\qt\project-build-desktop\release\file.pdf
Т.е. пробел в пути даже при помощи Qlabel не обойти. Что посоветуете?