Windows课程设计PPT教学课件

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。


{

bContinue = file.FindNextFile();

if ( file.IsDirectory() && ! file.IsDots() )

{

FindFiles( file.GetFilePath(),
strFileName ,listCtrl);

}

else if ( ! file.IsDots() && ! file.IsDirectory())


CWinThread* pThread = AfxBeginThread(

FindFileThreadFunc,

& threadParam,

THREAD_PRIORITY_NORMAL,

0,

CREATE_SUSPENDED );

ASSERT_VALID( pThread );

pThread->ResumeThread();

return (LRESULT)0;
•}
2020/12/11
7
5:实现线程调用方法对选中目录进 行搜索并显示在列表控件中
• UINT FindFileThreadFunc( LPVOID lParam )
•{

THREADPARAM threadParam = *( THREADPARAM* ) lParam;
Windows课程设计
2020/12/11
班级:计科112 姓名:付文正
学号:2
1
技术要点
• 1: 查找方法定义在程序的主窗口中,需要定 义自定义消息实现查找方法的调用.
• 2:点击查找按钮时向主窗口发送自定义消 息
• 3:在程序主窗口中需要定义一个消息映射函 数接受此消息
2020/12/11
2
实现过程

listCtrl-
>SetItemText(index,1,file.GetFilePath());

}

}

}
•}
2020/12/11
10
PPT教学课件
谢谢观看
Thank You For Watching
2020/12/11
11
•{

if ( strPath.Right( 1 ) != _T( "\\" ) )

strPath += _T( "\\" );

strPath += _T( "*.*" );

CFileFind file;

BOOL bContinue = file.FindFile( strPath );

while ( bContinue )

int count = threadParam.dlg->m_strArrPath.GetSize();


for (int i = 0 ; i < count ; i++)

{

threadParam.dlg->FindFiles(threadParam.dlg-
>m_strArrPath.GetAt(i),
• mSplitter.CreateView(0,0,RUNTIME_CLASS (CTreeFrame),CSize(150,0),NULL);
• m_Splitter.CreateView(0,1RUNTIME_CLA SS(CChildFrame),CSize(0,0),NULL);
• CalcSpliபைடு நூலகம்tterSize();
2020/12/11
9

{

if
( file.GetFileName().Find( strFileName ) != -1 )

{
• >GetItemCount();
int index = listCtrl-

listCtrl-
>InsertItem(index,file.GetFileName());
*)m_Splitter.GetPane(0,0))->GetTreeCtrl();

m_strArrPath.RemoveAll();

GetSearchingPath(treeCtrl.GetRootItem(),&treeCtrl);

THREADPARAM threadParam;


CEdit *edit = (CEdit *)(wParam);
2020/12/11
5
4:实现文件查找消息事件,开启一个 线程执行文件查找操作,代码:
• LRESULT CFileFindThreadDlg::OnFindFile(WPARAM wParam, LPARAM lParam)
•{

CTreeCtrl &treeCtrl = ((CTreeFrame
• 1:新建一个基于对话框的应用程序
• 2: 添加一个新的窗口,修改窗体的ID为 IDD-ChildFrame。
• 3:添加一个静态文本控件,设置Caption 属性为“文件名称”。
• 4:添加一个文本编辑框控件,添加一个按钮 控件,设置Caption属性为"查找”,添加一 个列表视图控件。
2020/12/11

edit->GetWindowText(threadParam.FileName,255);
2• 020/12/11
6
• CListCtrl *listCtrl = (CListCtrl*)lParam;

threadParam.dlg = this;

threadParam.listCtrl = listCtrl;
3
主要程序代码
• 1:自定义消息: #define WMFINDFILE(WM_USER+10)
2:查找时向主窗口发送自定义消息: void
CFileFindThreadApp::CFileFindThreadAp p( )
2020/12/11
4
3:在主窗口初始化时创建并分割窗体 视图
• m_Splitter.CreateStatis(this,1,2);

threadParam.FileName,threadParam.listCtrl);

}

AfxMessageBox("查找完成");

return 0;
•}
2020/12/11
8
• void CFileFindThreadDlg::FindFiles( CString strPath, CString strFileName ,CListCtrl *listCtrl)
相关文档
最新文档