Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Add file_name for each text_edit

Add file_name for each text_edit

Scheduled Pinned Locked Moved Solved General and Desktop
3 Posts 2 Posters 289 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • K Offline
    K Offline
    Kinesis
    wrote on last edited by
    #1

    I am stuck in adding file names to each text_edits which are put in list widget . Here is the code . I don't know how to add file names at the bottom of each text_edits.I would appreciate any answers .Thanks.

    ui->listWidget->setFlow(QListView::LeftToRight);
    ui->listWidget->setMinimumSize(860,380);
    ui->listWidget->setGridSize(QSize(420, 380));
    ui->listWidget->setResizeMode(QListView::Adjust);
    ui->listWidget->setViewMode(QListView::ListMode);
    ui->listWidget->setWrapping(true);
    QDir directory = QFileDialog::getExistingDirectory(this, tr("Open      Directory"),"/home",
                                                                                                         QFileDialog::ShowDirsOnly| QFileDialog::DontResolveSymlinks);
    
    
    
    
    directory.setNameFilters({"*.log", "*.txt" , "*.sh" , "*.yml"});
    
    for(const QFileInfo & finfo: directory.entryInfoList()){
        
        m_textEdit = new QTextEdit;
        m_textEdit -> setReadOnly(true);
        QFile data(finfo.absoluteFilePath()) ;
        data.open(QIODevice::ReadOnly);
        QTextStream stream(&data);
        QString content = stream.readAll();
        data.close();
        
        m_textEdit->setText(content);
        auto item = new QListWidgetItem("", ui->listWidget);
        m_textEdit->setMinimumSize(400,360);
        ui->listWidget->setItemWidget(item, m_textEdit);
        }
    
    D 1 Reply Last reply
    0
    • K Kinesis

      I am stuck in adding file names to each text_edits which are put in list widget . Here is the code . I don't know how to add file names at the bottom of each text_edits.I would appreciate any answers .Thanks.

      ui->listWidget->setFlow(QListView::LeftToRight);
      ui->listWidget->setMinimumSize(860,380);
      ui->listWidget->setGridSize(QSize(420, 380));
      ui->listWidget->setResizeMode(QListView::Adjust);
      ui->listWidget->setViewMode(QListView::ListMode);
      ui->listWidget->setWrapping(true);
      QDir directory = QFileDialog::getExistingDirectory(this, tr("Open      Directory"),"/home",
                                                                                                           QFileDialog::ShowDirsOnly| QFileDialog::DontResolveSymlinks);
      
      
      
      
      directory.setNameFilters({"*.log", "*.txt" , "*.sh" , "*.yml"});
      
      for(const QFileInfo & finfo: directory.entryInfoList()){
          
          m_textEdit = new QTextEdit;
          m_textEdit -> setReadOnly(true);
          QFile data(finfo.absoluteFilePath()) ;
          data.open(QIODevice::ReadOnly);
          QTextStream stream(&data);
          QString content = stream.readAll();
          data.close();
          
          m_textEdit->setText(content);
          auto item = new QListWidgetItem("", ui->listWidget);
          m_textEdit->setMinimumSize(400,360);
          ui->listWidget->setItemWidget(item, m_textEdit);
          }
      
      D Offline
      D Offline
      Devopia53
      wrote on last edited by
      #2

      @Kinesis

      Add the layout to the previous example. like this:

      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    widget = new QWidget;
          auto    text = new QTextEdit(content);
          auto    label = new QLabel(finfo.fileName());
          auto    vb = new QVBoxLayout;
      
          vb->addWidget(text, 9);
          vb->addWidget(label, 1);
          widget->setLayout(vb);
          widget->setMinimumSize(100, 80);
          ui->listWidget->setItemWidget(item, widget);
      }
      
      K 1 Reply Last reply
      1
      • D Devopia53

        @Kinesis

        Add the layout to the previous example. like this:

        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    widget = new QWidget;
            auto    text = new QTextEdit(content);
            auto    label = new QLabel(finfo.fileName());
            auto    vb = new QVBoxLayout;
        
            vb->addWidget(text, 9);
            vb->addWidget(label, 1);
            widget->setLayout(vb);
            widget->setMinimumSize(100, 80);
            ui->listWidget->setItemWidget(item, widget);
        }
        
        K Offline
        K Offline
        Kinesis
        wrote on last edited by
        #3

        @Devopia53
        it works! Thanks again for your help .

        1 Reply Last reply
        0

        • Login

        • Login or register to search.
        • First post
          Last post
        0
        • Categories
        • Recent
        • Tags
        • Popular
        • Users
        • Groups
        • Search
        • Get Qt Extensions
        • Unsolved