crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в ListView & QMimeData &QClipboard
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
enslaver Дата 8.4.2010, 11:03
  Литература есть... вот только объяснить некому конкретный случай.
так то по соображениям сделал через QFile::copy() и QDir::mkdir(). но пока что не совсем рабоче...
Использовал как основу функцию удаления файлов и папок....
Как будет код выложи, а пока может кто что лучше предложит...
Litkevich Yuriy Дата 8.4.2010, 5:26
 
Цитата(enslaver @ 8.4.2010, 0:32) *
QDirModel устарел, так как QFileSystemModel
где-то у тролей было обсуждение про него, из которого я сделал вывод, что следует использовать
QNetWorkManager вместо QHttp
QFileSystemModel вместо QDirModel
...
(ещё несколько классов)
вроде как QDirModel медленный

Цитата(enslaver @ 8.4.2010, 0:32) *
Я ставил QFileSystemModel но что то с ним даже представление не отображается а просто пусой виджет
сейчас проверил на примере examples\itemviews\dirview
там нужно такой код написать вместо QDirModel model;:
QFileSystemModel model;
model.setRootPath("");
модель ничего не делает после создания, если для неё этот метод не вызван. Правда описания этого метода я не понял.

enslaver, посмотри примеры по "перетаскиванию" (drag-n-drop), может там что-то найдёшь по своей теме.
Ещё есть статья про MimeData: Как передавать через буфер обмена произвольные типы данных?
Может пригодится
enslaver Дата 7.4.2010, 20:32
 
Цитата(Litkevich Yuriy @ 7.4.2010, 12:47) *
Цитата(DIMEDROLL @ 7.4.2010, 15:29) *
помоему QDirModel этим не занимается, он просто отображает данные
ну в описании не сказано, что это модель "только для чтения". И у неё переопределён метод dropMimeData, стало быть "броски" принимает. А какие именно можно посмотреть с помощью virtual Qt::DropActions supportedDropActions () const

Другое дело - она формально устарела, вместо неё рекомендуют использовать QFileSystemModel


Я ставил QFileSystemModel но что то с ним даже представление не отображается а просто пусой виджет... но как факт он тоже имет такую же функцию
bool QFileSystemModel::dropMimeData ( const QMimeData * data, Qt::DropAction action, int row, int column, const QModelIndex & parent )   [virtual]

вообще в QMimeData содержаться имена файлов и папок. вот и как с ними бить?
тобишь имеем имена, и что с ними дальше делать? в какую из функции направить? и не думаю что QDirModel устарел, так как QFileSystemModel появился только в 4.4[quote]This class was introduced in Qt 4.4/quote]
Litkevich Yuriy Дата 7.4.2010, 11:47
 
Цитата(DIMEDROLL @ 7.4.2010, 15:29) *
помоему QDirModel этим не занимается, он просто отображает данные
ну в описании не сказано, что это модель "только для чтения". И у неё переопределён метод dropMimeData, стало быть "броски" принимает. А какие именно можно посмотреть с помощью virtual Qt::DropActions supportedDropActions () const

Другое дело - она формально устарела, вместо неё рекомендуют использовать QFileSystemModel
DIMEDROLL Дата 7.4.2010, 11:29
 
Цитата(enslaver @ 7.4.2010, 11:06) *
копирование, перемещение, вырезание и вставку(файл и папка).
я просто не понимаю как вставить имеющеюся QMimeData через QDirModel.

помоему QDirModel этим не занимается, он просто отображает данные...
посмотри в сторону QFile::copy() - это для копирования файлов, а для папок вероятно прийдется самому написать код
enslaver Дата 7.4.2010, 11:06
 
Цитата(DIMEDROLL @ 6.4.2010, 23:03) *
а что нужно сделать? скопировать файл?


копирование, перемещение, вырезание и вставку(файл и папка).
я просто не понимаю как вставить имеющеюся QMimeData через QDirModel.
DIMEDROLL Дата 6.4.2010, 22:03
  а что нужно сделать? скопировать файл?
enslaver Дата 6.4.2010, 21:54
  Как связать все эти вещи?

Имеется QListView связанная с QDirModel.
Как вставить в нее объект типа QMimeData.
Видел там функцию
virtual bool dropMimeData ( const QMimeData * data, Qt::DropAction action, int row, int column, const QModelIndex & parent )

Но так и не разобрался как с ней работать, в частности нужно или нет и откуда вообще брать (int row, int column)....
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 28.3.2024, 21:18