2013-09-01 2 views
1

Я сделал кнопку, которая будет просматривать и получать текстовый файл. Но мне нужно открыть его в новом окне, чтобы проверить правильность содержимого текстового файла. Как мне это сделать?Открытый текстовый файл GUI QtCreator

Кроме того, я хотел бы иметь право редактировать справа от кнопки, которая показывает, какой файл я просматриваю. Другими словами, каталог файла, который открывается через кнопку.

В настоящее время, это то, что у меня есть:

void MainWindow::on_fileButton_clicked() 
{ 
    QString fileName1 = QFileDialog::getOpenFileName(this,tr("Open Text File"), "", tr("Text Files (*.txt)")); 
    QFile file1(fileName1); 
    if(!file1.open(QIODevice::ReadOnly | QIODevice::Text)) 
     return; 

    QTextStream in(&file1); 
    while(!in.atEnd()){ 
     QString line = in.readLine(); 
    } 
} 

ответ

1

Я предлагаю использовать один из мощных текстовых интерфейсов доступны:

void MainWindow::openfile() { 
    QString fileName1 = QFileDialog::getOpenFileName(this,tr("Open Text File"), "", tr("Text Files (*.txt)")); 
    QFile file1(fileName1); 
    if(!file1.open(QIODevice::ReadOnly | QIODevice::Text)) 
     return; 

    // show the directory path of opened file 
    dir->setText(QFileInfo(file1).dir().path()); 

    QTextBrowser *b = new QTextBrowser; 
    b->setText(file1.readAll()); 
    b->show(); 
} 

реж переменная член инициализируется в конструкторе с

dir = new QLineEdit(this); 
+0

hey .. приведенный выше код дает ошибку как ошибку: 'dir' не был объявлен в этой области, как его решить – lkkkk

+0

@Latik: возможно объявить 'QLineEdit * dir;' в MainWindow.h и выделить его в конструкторе 'MainWindow (...) {dir = new QLineEdit (this); } ' – CapelliC

0

вы должны сделать новое окно путем добавления Dialog или MainWindow. после этого добавьте в свой новый диалог виджетов, таких как textEdit и другие.

вам необходимо изучить некоторые основы Qt framework: есть очень хорошая документация по Qt, вы можете использовать его. а также есть 100 short videos of Qt learning.

+0

означает, что мы не можем открыть текстовый файл, но мы можем загрузить содержимое файла txt в textEdit. – lkkkk