Bonsoir,
Je cherche à faire un copier-coller à partir d'un QTableWidget.
J'ai deux SLOTs appelés à partir de mon menu
voici mon code posant problème:
j'ai un segmentation fault lié à la ligne :tableau->currentItem()->setText(texte);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 ... // déclaration qtablewidget QTableWidget* tableau; tableau=new QTableWidget(); tableau->setRowCount(10); tableau->setColumnCount(10); hboxlayout->addWidget(tableau); ... void copier() { QString texte=tableau->currentItem()->text(); QClipboard *clipboard=QApplication::clipboard(); clipboard->setText(texte); } void coller() { QClipboard *clipboard=QApplication::clipboard(); QString texte=clipboard->text(); char* str=texte.toLocal8Bit().data(); printf("valeur de 'texte' dans fonction coller : %_n",str); tableau->currentItem()->setText(texte); }
si je la commente, ça fonctionne mais bien sûr sans faire de copie.
Ca ne vient pas de la recup du contenu du clipboard j'ai ajouté les lignes
char* str=texte.toLocal8Bit().data();
printf("valeur de 'texte' dans fonction coller : %_n",str);
pour vérifier la recup du clipboard.
Je pense que àa vient du currentitem qui n'est plus valable car j'ai sélectionne une autre case avant de lancer le SLOT coller(), mais je ne comprend pas pourquoi.
Info complémentaire si je ne change pas de cellule, et que je coller() est appelé : pas de plantage.
Merci pour votre aide.
Partager