日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

VC++ 单文档项目显示打开的文件

發布時間:2025/4/14 c/c++ 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VC++ 单文档项目显示打开的文件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

VC++ 新建一個單文檔項目以后,直接運行;效果如下;

界面上的菜單,工具條,都是單文檔項目框架自動生成;

然后選擇 文件 菜單中的 打開 文件;點擊后,并看不到任何反應;但是此時框架肯定進行了一些動作,保存了可以直接使用的東西;

那么如何顯示打開的文件呢?

進入類向導,類名下拉選中Doc類;消息選中 OnOpenDocument;看一下此時還沒有處理函數;

點擊 Add Function,看下面成員函數列表,添加了函數OnOpenDocument;

點 Edit Code,可以進入編輯該函數的代碼;

先在Doc類的頭文件中,添加一個成員變量;用于存儲打開的文件內容;

在OnOpenDocument函數中添加讀取文件的代碼;完成后如下;

BOOL CTest1Doc::OnOpenDocument(LPCTSTR lpszPathName) {if (!CDocument::OnOpenDocument(lpszPathName))return FALSE;// TODO: Add your specialized creation code hereif(lpszPathName!=NULL) { CFile pCFile;int hResult=pCFile.Open(lpszPathName, CFile::modeReadWrite); if(hResult != 0){// AfxMessageBox("打開文件成功");}//將文件讀到dgx字符串CString temp;//可實現重復打開文件pCFile.Read(temp.GetBuffer(pCFile.GetLength()), pCFile.GetLength()); temp.ReleaseBuffer();dgx=temp;pCFile.Close();}return TRUE; }

看一下lpszPathName變量中,已經保存了選擇文件的路徑;這是由框架傳過來的,可以直接使用;

然后在視類OnDraw函數,添加在窗口上輸出文字的代碼;完成后如下;

void CTest1View::OnDraw(CDC* pDC) {CTest1Doc* pDoc = GetDocument();ASSERT_VALID(pDoc);// TODO: add draw code for native data herepDC->DrawText(pDoc->dgx,pDoc->dgx.GetAllocLength(),CRect(50,50,500,500),DT_WORDBREAK); }

在視類中可以獲取到Doc類的成員變量pDoc->dgx的內容;然后顯示;

在磁盤上新建一個測試文本,錄入一首詩歌;

然后運行程序,打開測試文本;打開,即會顯示;

視類的基本使用,可參閱

https://blog.csdn.net/bcbobo21cn/article/details/88097135

框架類、文檔類、視圖類的關系,等內容,參閱相關資料;

總結

以上是生活随笔為你收集整理的VC++ 单文档项目显示打开的文件的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。