Add textEdits on listWidget
-
@Kinesis QListWidget isn't a layout, it is a widget. I don't think you can add text edit easily to QListWidget, maybe you can if you subclass QListWidgetItem. Does it really need to be text edit (I guess you mean QLineEdit?)? Or is it only read-only text?
wrote on 25 Jun 2018, 04:53 last edited by Kinesis@jsulm
For QLineEdit , I tested it . I found that it is not suitable because QLineEdit is 1 line text editor . I need to show text with multiple lines .And the text should be read-only text. That's why text edit or text browse is the most suitable for me.
So is there another widget that textedits can be added ?? -
@jsulm
For QLineEdit , I tested it . I found that it is not suitable because QLineEdit is 1 line text editor . I need to show text with multiple lines .And the text should be read-only text. That's why text edit or text browse is the most suitable for me.
So is there another widget that textedits can be added ??@Kinesis If the text is read-only why not simply add it using http://doc.qt.io/qt-5/qlistwidgetitem.html#QListWidgetItem-2 ?
QListWidgetItem *item = new QListWidgetItem(icon, "some text"); listWidget->addItem(item);
-
@Kinesis If the text is read-only why not simply add it using http://doc.qt.io/qt-5/qlistwidgetitem.html#QListWidgetItem-2 ?
QListWidgetItem *item = new QListWidgetItem(icon, "some text"); listWidget->addItem(item);
wrote on 25 Jun 2018, 05:25 last edited by Kinesis@jsulm
read-only text means text inside textedit is read only.plz take alook my code and u will understand clearly.for(const QFileInfo & finfo: directory.entryInfoList()){ m_textEdit = new QTextEdit; QFile data(finfo.absoluteFilePath()) ; data.open(QIODevice::ReadOnly); QTextStream stream(&data); QString content = stream.readAll(); data.close(); m_textEdit->setText(content); m_textEdit->show(); ui->listWidget->addItem(m_textEdit); }
The problem is that I cant add textEdit on listWidget easily .
-
@jsulm
read-only text means text inside textedit is read only.plz take alook my code and u will understand clearly.for(const QFileInfo & finfo: directory.entryInfoList()){ m_textEdit = new QTextEdit; QFile data(finfo.absoluteFilePath()) ; data.open(QIODevice::ReadOnly); QTextStream stream(&data); QString content = stream.readAll(); data.close(); m_textEdit->setText(content); m_textEdit->show(); ui->listWidget->addItem(m_textEdit); }
The problem is that I cant add textEdit on listWidget easily .
@Kinesis Sorry, but I still don't get why you need a QTextEdit? QListWidgetItem already can show text:
for(const QFileInfo & finfo: directory.entryInfoList()){ QFile data(finfo.absoluteFilePath()) ; data.open(QIODevice::ReadOnly); QTextStream stream(&data); QString content = stream.readAll(); data.close(); QListWidgetItem *m_textEdit = new QListWidgetItem(content); ui->listWidget->addItem(m_textEdit); }
-
@Kinesis Sorry, but I still don't get why you need a QTextEdit? QListWidgetItem already can show text:
for(const QFileInfo & finfo: directory.entryInfoList()){ QFile data(finfo.absoluteFilePath()) ; data.open(QIODevice::ReadOnly); QTextStream stream(&data); QString content = stream.readAll(); data.close(); QListWidgetItem *m_textEdit = new QListWidgetItem(content); ui->listWidget->addItem(m_textEdit); }
-
@jsulm
Thanks for your code but I want to show textedits on list widget like that image
BTW I really appreciate your help :)@Kinesis But what is wrong with my code? It should show the text inside the QListWidget.
Your picture shows each text in its own window - is this what you want?! -
@Kinesis But what is wrong with my code? It should show the text inside the QListWidget.
Your picture shows each text in its own window - is this what you want?! -
@Kinesis My question was whether you want to show it in a WINDOW like in your picture.
And can you explain why you need a QTextEdit to show read-only text if you already can show text in QListWidget? I really don't understand that. -
@Kinesis My question was whether you want to show it in a WINDOW like in your picture.
And can you explain why you need a QTextEdit to show read-only text if you already can show text in QListWidget? I really don't understand that.wrote on 25 Jun 2018, 06:42 last edited by Kinesis@jsulm
Here is my sample GUI that I am planning to create . In this sample U will see that all videos ,images and textedits will be showed on same widget! Thats why I need to use textedit 0_1529908949075_AA.png -
@jsulm
Here is my sample GUI that I am planning to create . In this sample U will see that all videos ,images and textedits will be showed on same widget! Thats why I need to use textedit 0_1529908949075_AA.pngwrote on 26 Jun 2018, 05:55 last edited by Devopia53like this(only example):
ui->listWidget->setFlow(QListView::LeftToRight); ui->listWidget->setGridSize(QSize(110, 90)); ui->listWidget->setResizeMode(QListView::Adjust); ui->listWidget->setViewMode(QListView::ListMode); ui->listWidget->setWrapping(true); for (const QFileInfo &finfo : directory.entryInfoList()) { [...] auto item = new QListWidgetItem("", ui->listWidget); auto text = new QTextEdit(content); text->setMinimumSize(100, 80); ui->listWidget->setItemWidget(item, text); }
-
like this(only example):
ui->listWidget->setFlow(QListView::LeftToRight); ui->listWidget->setGridSize(QSize(110, 90)); ui->listWidget->setResizeMode(QListView::Adjust); ui->listWidget->setViewMode(QListView::ListMode); ui->listWidget->setWrapping(true); for (const QFileInfo &finfo : directory.entryInfoList()) { [...] auto item = new QListWidgetItem("", ui->listWidget); auto text = new QTextEdit(content); text->setMinimumSize(100, 80); ui->listWidget->setItemWidget(item, text); }
wrote on 26 Jun 2018, 06:42 last edited by@Devopia53
it works! , Thanks alot
14/15