📄 lrdlg.cpp
字号:
#include "stdafx.h"
#include "LR.h"
#include "LRDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
CLRDlg::CLRDlg(CWnd* pParent)
: CDialog(CLRDlg::IDD, pParent){
//{{AFX_DATA_INIT(CLRDlg)
//}}AFX_DATA_INIT
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
p_file=NULL;
}
CLRDlg::~CLRDlg(){
if(p_file!=NULL)
fclose(p_file);
}
void CLRDlg::DoDataExchange(CDataExchange* pDX){
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CLRDlg)
DDX_Control(pDX, IDC_LIST_SHOW, m_lstShow);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CLRDlg, CDialog)
//{{AFX_MSG_MAP(CLRDlg)
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_COMMAND(IDR_FILE_OPEN, OnFileOpen)
ON_COMMAND(IDR_VIEW_IDENT, OnViewIdent)
ON_COMMAND(IDR_VIEW_FIRST_SET, OnViewFirstSet)
ON_COMMAND(IDR_VIEW_FOLLOW_SET, OnViewFollowSet)
ON_COMMAND(IDR_MLR1_SIZE, OnMlr1Size)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
BOOL CLRDlg::OnInitDialog(){
CDialog::OnInitDialog();
SetIcon(m_hIcon, TRUE);
SetIcon(m_hIcon, FALSE);
return TRUE;
}
void CLRDlg::OnPaint(){
if (IsIconic()){
CPaintDC dc(this);
SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;
dc.DrawIcon(x, y, m_hIcon);
}else{
CDialog::OnPaint();
}
}
HCURSOR CLRDlg::OnQueryDragIcon(){
return (HCURSOR) m_hIcon;
}
void CLRDlg::OnFileOpen(){
//打开.txt文件
CString s;
CFileDialog dlg(TRUE,"*.txt","",OFN_HIDEREADONLY,"Text Files (*.txt)|*.txt||",this);
dlg.m_ofn.lpstrTitle = "Select Source";
if(dlg.DoModal() == IDOK){
if(p_file)fclose(p_file);
p_file=fopen(dlg.GetPathName(),"r");
if(p_file==NULL){
AfxMessageBox("不能打开文件!");
return;
}
m_lstShow.ResetContent();
m_mlr1.ReSet(p_file);
}
}
void CLRDlg::OnViewIdent(){
int i,n;
if(p_file==NULL)AfxMessageBox("没有打开的文件");
m_lstShow.ResetContent();
n=m_mlr1.GetIdentList().GetSize();
for(i=0;i<n;i++)
m_lstShow.AddString(m_mlr1.GetIdentList().GetAt(i));
}
void CLRDlg::OnViewFirstSet(){
if(p_file==NULL)AfxMessageBox("没有打开的文件");
m_lstShow.ResetContent();
int i,j=m_mlr1.GetIdentNum();
for(i=0;i<j;i++)
m_lstShow.AddString(m_mlr1.GetFirst(i));
}
void CLRDlg::OnViewFollowSet(){
if(p_file==NULL)AfxMessageBox("没有打开的文件");
m_lstShow.ResetContent();
int i,j=m_mlr1.GetIdentNum();
for(i=0;i<j;i++)
m_lstShow.AddString(m_mlr1.GetFollow(i));
}
void CLRDlg::OnMlr1Size(){
CString msg;
msg.Format("The class MLR1's size is:%5d B",sizeof(MLR1));
AfxMessageBox(msg);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -