UI界面:

控件包括 QTreeWidget 和 Push Button
1.头文件:
#ifndef FTPWINDOW_H
#define FTPWINDOW_H
#include <QMainWindow>
#include <QFtp>
#include <QTreeWidgetItem>
namespace Ui {
class ftpWindow;
}
class ftpWindow : public QMainWindow
{
Q_OBJECT
public:
explicit ftpWindow(QWidget *parent = 0);
~ftpWindow();
private slots:
void loadFileList(QUrlInfo);
void on_fileInfo_tw_itemDoubleClicked(QTreeWidgetItem *item, int column);
void on_cdToParen_btn_clicked();
private:
Ui::ftpWindow *ui;
QFtp *ftp;
QString currentPath;
QTreeWidgetItem *item;
};
#endif // FTPWINDOW_H
头文件只包含部分,请勿直接copy
2.主要部分
在连接并登陆FTP服务器后,如果向服务器发送 ftp->list()信号,那么服务器则会把当前目录下的所有文件通过listInfo(QUrlInfo)信号发送到客户端。而我们要做的,就是对这些信号进行处理</

本文介绍了如何在QT界面中利用QTreeWidget组件展示FTP服务器的文件结构。通过连接FTP服务器,监听list()信号,处理QUrlInfo数据并在loadFileList()槽函数中动态填充QTreeWidget。当双击文件夹节点时,可以进入下一级目录,同时更新“向上一级”按钮的状态。注意中文文件名的编码处理和在切换目录时清空QTreeWidget的内容。

1009

被折叠的 条评论
为什么被折叠?



