Russian Qt Forum
Ноябрь 24, 2024, 11:40 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Запуск приложения из файла менеджера  (Прочитано 3481 раз)
koldun90
Крякер
****
Offline Offline

Сообщений: 345


Просмотр профиля
« : Июль 01, 2014, 12:32 »

здравствуйте такой вопросик.
Есть файловая система qfilesystemmodel  представленная в qtreeview.
Вопрос в том что нужно сделать чтобы реализовать при двойном щелчке мышью по определенному типу файлов его открывало приложение(делаю в Linux).
Те грубо говоря чтоб при двойном клике, файл открывался в ассоциированном с этим файлом приложением. Ну пример из винды допустим (txt в блокноте по умолчанию).
Подскажите какие классы нужно для этого использовать?
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #1 : Июль 01, 2014, 13:05 »

Улыбающийся
Записан

koldun90
Крякер
****
Offline Offline

Сообщений: 345


Просмотр профиля
« Ответ #2 : Июль 02, 2014, 09:47 »

собственно начал реализацию метода
вот что получилось

Код:
void MainWindow::on_Treeview_doubleClicked(QModelIndex &index)   //двойнойклик по тривиеву
{
    if (model1->fileInfo(index).isFile();   //если файл
    {
           QString str=model1->fileInfo(index).absoluteFilePatch();  // берем его абсолютный путь
           QDesktopServices::openurl(QUrl(str); //запускаем файл в ассоциированным с ним приложении
     }
}

Вот вроде все нормально работают
txt файлы открываются в редакторе
cpp и ui открываются в qt creator...

возник маленький вопросик
дело в том что когда я кликаю мышкой
по объекту файловой системы(допустим файлу)
то как бы на мгновение происходит активация переименования(те активируется переименование файла на несколько секунд), а потом уже как бы файл запускается в ассоц. с ним приложении так вот вопрос как бы  мне заблокировать переименование файла при двойном клике по объекту(файлу) ?
   

Записан
carrygun
Гость
« Ответ #3 : Июль 02, 2014, 10:20 »

Установить нужные флаги для TreeView.
Записан
koldun90
Крякер
****
Offline Offline

Сообщений: 345


Просмотр профиля
« Ответ #4 : Июль 02, 2014, 10:42 »

а какой метод использовать тогда для установки флагов в qtreeview?
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #5 : Июль 02, 2014, 10:48 »

а какой метод использовать тогда для установки флагов в qtreeview?

Пользуйтесь документацией Улыбающийся
void setEditTriggers ( EditTriggers triggers )
Записан

koldun90
Крякер
****
Offline Offline

Сообщений: 345


Просмотр профиля
« Ответ #6 : Июль 02, 2014, 10:54 »

да блин я ползуюсь, но там тока editTriggers 2 штуки+ editTrigger
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.047 секунд. Запросов: 23.