Copier les éléments sélectionnés de QlistWidget rempli de noms de fichiers dans le presse-papiers, mais comme fichiers (pas texte)

StackOverflow https://stackoverflow.com/questions/4980619

  •  12-11-2019
  •  | 
  •  

Question

J'ai un qlistwidget que je remplisse de noms de fichiers, lorsque l'utilisateur frappe CTRL + C, je souhaite placer les noms de fichiers dans le presse-papiers, donc si l'utilisateur frappe CTRL + V dans un gestionnaire de fichiers, les fichiers seront copiés.

Était-ce utile?

La solution

Vous devrez sous-classer le qlistWidget et écrire dans la touchePresseEvent () quelque chose comme ça:

virtual void keyPressEvent(QKeyEvent *event) {
if (event->matches(QKeySequence::Copy)) {
  int itemsCount = count();
  QStringList strings;
  for (int i = 0; i < itemsCount; ++i)
    strings << item(i)->text();

  QApplication::clipboard()->setText(strings.join("\n"));
}

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top