MFC对话框显示待上传的文件列表
时间: 2023-10-16 20:10:06 浏览: 82
FTP客户端程序设计.doc
要在MFC对话框中显示待上传的文件列表,可以使用列表框控件。以下是一些基本的步骤:
1. 在对话框设计器中添加一个列表框控件。
2. 在对话框类中定义一个成员变量,类型为CListBox,用于引用该列表框控件。
3. 在OnInitDialog()方法中,使用DDX_Control()方法将列表框控件与成员变量关联起来。例如:
```
BOOL CMyDialog::OnInitDialog()
{
CDialogEx::OnInitDialog();
m_listBox.Attach(GetDlgItem(IDC_LIST_BOX)->GetSafeHwnd());
// 其他初始化代码...
return TRUE;
}
```
4. 在需要显示待上传文件列表的地方,使用AddString()方法将文件名添加到列表框中。例如:
```
void CMyDialog::OnShowFileList()
{
CStringArray fileNames; // 待上传文件名列表,可以从其他地方获取
m_listBox.ResetContent(); // 清空列表框
for (int i = 0; i < fileNames.GetCount(); i++)
{
m_listBox.AddString(fileNames[i]); // 添加文件名到列表框
}
}
```
5. 如果需要支持选择文件并上传,可以在对话框中添加一个“选择文件”按钮,并在其OnClick()事件中调用CFileDialog进行文件选择。选择完成后,将所选文件名添加到待上传文件列表中并更新列表框。例如:
```
void CMyDialog::OnSelectFile()
{
CStringArray selectedFiles;
// 打开文件选择对话框,获取所选文件名
CFileDialog fileDialog(TRUE);
if (fileDialog.DoModal() == IDOK)
{
POSITION pos = fileDialog.GetStartPosition();
while (pos != NULL)
{
CString fileName = fileDialog.GetNextPathName(pos);
selectedFiles.Add(fileName);
}
}
// 将所选文件名添加到待上传文件列表中
for (int i = 0; i < selectedFiles.GetCount(); i++)
{
m_fileList.Add(selectedFiles[i]);
}
// 更新列表框
UpdateFileList();
}
```
阅读全文