文件新建、開啟及關閉的過程
應用程式類的InitInstance()函式在呼叫了AddDocTemplate()函式之後,會通過CWinApp::ProcessShellCommand間接呼叫
CWinApp的OnFileNew,並依次完成下列工作:
(1)構造文件物件,從磁碟中讀取資料。
(2)構造主框架類CMainFrame類的物件,並建立該主框架視窗,但不顯示。
(3)構造檢視物件,並建立檢視視窗,同樣也不顯示。
(4)通過MFC內部機制,建立主框架視窗、文件和檢視物件之間的聯絡。
(5)呼叫CDocument::OnNewDocument()虛擬函式,並呼叫CDocument::DeleteContents()虛擬函式來清除文件物件的內容。
(6)呼叫CView::OnInitialUpdate()虛擬函式初始化檢視類的資料成員。
(7)呼叫CFrameWnd::ActiveFrame()虛擬函式,顯示帶有選單、工具欄、狀態列以及檢視視窗的主框架視窗。
開啟文件
在利用MFC應用程式嚮導建立應用程式時,MFC會自動將“檔案”選單中的“開啟”命令對映到CWinApp類的OnFileOpen()成員函式。OnFileOpen()函式會完成下列操作:
(1)彈出通用檔案“開啟”對話方塊,供使用者選擇一個文件。
(2)文件指定後,呼叫文件物件的CDoucment::OnOpenDocument()虛擬函式。這個函式將開啟文件,並呼叫DeleteContents()函式清除文件物件的內容,然後建立一個CArchive物件用於資料的讀取,接著又自動呼叫Serialize()函式。
(3)呼叫檢視物件的CView::OnInitialUpdate()虛擬函式初始化檢視類的資料成員。
儲存文件
在利用MFC應用程式嚮導建立應用程式時,它會自動將“檔案”選單中的“儲存”命令與文件類的OnFileSave成員函式在內部關聯。OnFileSave()函式會完成下列操作:
(1)彈出通用檔案“儲存”對話方塊,讓使用者輸入一個檔名。
(2)呼叫文件類物件的CDocument::OnSaveDocument()虛擬函式,接著又自動呼叫Serialize()函式,將CArchive物件的內容儲存在文件中。
關閉文件
當用戶試圖關閉文件(或退出應用程式)時,應用程式會根據使用者對文件的修改與否來進一步完成下列任務。
(1)若文件內容已修改,則彈出一個“訊息”對話方塊,詢問使用者是否儲存修改後的文件。當用戶選擇“是”,則應用程式執行OnFileSave過程。
(2)呼叫CDocument::OnCloseDocument()虛擬函式,關閉所有與該文件相關聯的文件視窗及相應的檢視,呼叫文件類的DeleteContents清除文件資料。
相關推薦
文件新建、開啟及關閉的過程
應用程式類的InitInstance()函式在呼叫了AddDocTemplate()函式之後,會通過CWinApp::ProcessShellCommand間接呼叫 CWinApp的OnFileNew
文件歸檔、壓縮及傳輸
文件歸檔、壓縮及傳輸1.文件歸檔文件歸檔,就是把多個文件變成一個歸檔文件tar c 創建 f 指定歸檔文件名稱 t 顯示歸檔文件中的內容 r
Python文件管理、亂碼及對passwd文件排序
() oss ora nco ges pool doc post game 1.讀寫文件讀文件: f = open("1.txt") text = f.readlines() print(text)寫文件: f = open(
淺談三大文件——需求、概要及詳細
當今,電腦已經走進了千家萬戶。而用360清理電腦,好像已經是每家每戶經常乾的事情。而我的一個遠親更為誇張,家裡電腦上裝滿了360的套裝。從瀏覽器到安全衛士再到防毒軟體。清理電腦清理的頻
C#中操作Word(2)—— 新建、開啟、儲存和關閉文件
本文中主要介紹C#中對word文件進行新建、開啟、儲存、關閉的方法。在本次試驗之前,先佈置試驗環境。首先,先新建一個winform的工程WordTest: 然後,在介面中新增一個按鈕,按鈕文字就叫做“測試”: 在按鈕的點選事
轉發:centos徹底刪除文件夾、文件命令(centos 新建、刪除、移動、復制等命令)
目錄 str detail 文件夾 目的 刪除文件夾 -i 命名 新建文件夾 http://blog.csdn.net/lpdx111/article/details/16877725 centos徹底刪除文件夾、文件命令(centos 新建、刪除、移動、復制等命令:
第4天【文件管理、管道、用戶及組管理、用戶及權限管理】
std 有效 i/o 屏幕 顯示行數 私有 文本處理 txt $path Bash的I/o重定向及管道 管道:使用豎杠符號‘|’表示,用於將前面命令的命名輸出結果作為命名後的操作對象。 重定向輸出:使用大於符號”>”表示,前面的命令成功執行以後,其屏幕輸出結果將保存到
文件系統基礎及ext文件系統創建及管理詳解、文件系統的使用及卸載、fstab文件格式及自動掛載系統的
文件系統創建文件系統--分區格式化 格式化: 低級格式化: 劃分磁道 高級格式化: 創建文件系統,按照某種特定的標準,將整個分區劃分為大小相同的若幹小的邏輯編址單元,每個這樣的單元稱為塊(block)【windows中稱為簇】; 劃分塊的標準: 在Linux的文件系統中,主要的塊的劃分
08-Linux基礎入門(六)-文件和目錄的屬性及權限之文件類型、文件擴展名及文件權限基礎
ins tmp first 串口 .py 都是 公眾平臺 cond .com 一、Linux中的文件類型在Linux系統中,可以說一切(包括目錄、普通文件、設備文件等)皆為文件。文件類型包含有普通文件、目錄、字符設備文件、設備文件、符號鏈接文件、管道文件等等,當執行ls
05: 分布式文件系統 、 FastDFS原理 、 FastDFS配置及應用
ble opp +++ load tin 分布式存儲 isa 4.2 libev 部署分布式存儲服務一、分布式文件系統介紹 二、配置分布式存儲服務2.1 配置主控節點(111) 裝包 修改配置文件 啟動服務 查看端口]# yum -y install
Linux自動掛載鏡像、遠程桌面、共享win7文件夾、創建raid5卷、創建HTML文件及靜態路由
自動掛載 遠程桌面 共享windows文件夾 raid5卷 靜態路由 Linux自動掛載鏡像、遠程桌面、共享win文件夾、創建raid5卷、創建HTML文件及網絡靜態路由綜合小實驗 環境描述:Linux01和win7分別是公司內網中的兩臺PC機,Linux02是公網上的一臺web服務器根
Py3.X全棧-Day05-文件壓縮、VIM編輯器及進程相關命令
合並 歸檔 vim編輯器 day 系統啟動 vim bsp pytho pan 01 python全棧s3 day5 上節課復習 02 python全棧s3 day5 文件合並與文件歸檔 03 python全棧s3 day5 文件歸檔與兩種壓縮方式 04 pytho
btrfs文件系統、壓縮工具及for語句、程序包管理
seq sys 寫一個腳本 ofo linux w 引擎 snapshot 狀態 之前 btrfs(b-tree、butter fs、better fs)oracle 公司研發的替代ext系列的cow(寫時復制)機制的文件系統,並遵循GPL協定 核心特性:1、多物理卷支持;
python處理excel文件(刪除、儲存、關閉)
之前在工作中使用python處理excel的時候,要用到python對excel表格中的資料全部刪除,因此在網上找資料,但是隨便一搜你會看到很多處理excel的方法庫,比如pandas、win32com、openpyxl。但是大都不是很準確,總是摻雜一些其他操
QT樣式表styleSheet(qss)幫助文件的使用,及相關術語、概念
學習樣式表,最好的參考資料莫過於QT自帶的幫助文件,隨便開啟一個QT工程,點選->幫助->索引->styleSheet,即可開啟QT所有關於樣式表的幫助資訊,如下圖所示: 比如,我們想查查下拉列表控制元件QComboBox支援哪些樣式屬性,可以點選上圖
Linux C程式設計學習筆記(2):open、creat、close函式及檔案的建立、開啟與關閉
my_create.c #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <sys/stat.h> #include
Nodejs學習文件day2———express框架及cookie、session
express框架使用安裝 npm install express express-static配置建立服務 var server=express();監聽 server.listen(8080);處理請求 server.use('地址',funct
Fedora 25文件對比、目錄對比工具——Meld——Linux平臺的對比工具
文件夾 linux 英文 軟件 meld 文件對比 處理文件的時候,經常遇到兩個非常相似的文件,需要對比、修改。Meld就是專門做這個工作的一款工具。Meld是一個可視的diff和合並工具。Meld是Linux軟件,用戶使用它可以比較2至3個文件並進行編輯,也可以比較2至3個文件夾並同
windows 如何不顯示帶點的文件名、文件夾?
9.png bsp mage 技術分享 資源管理器 ima lin 顯示 cnblogs 這些以點開頭的文件夾和文件是為了在 linux 中隱藏的。但是在 windows 中如何不顯示他們? 資源管理器: CMD: windows 如何不顯示帶點的文件
【Linux】Linux下統計當前文件夾下的文件個數、目錄個數
article logs 過濾 ref bash 輸出 子文件夾 http 輸出信息 統計當前文件夾下文件的個數,包括子文件夾裏的 ls -lR|grep "^-"|wc -l 統計文件夾下目錄的個數,包括子文件夾裏的 ls -lR|grep "^d"