📄 mainfun.cpp
字号:
// MainFun.cpp : implementation file
//
#include "stdafx.h"
#include "ppjlb.h"
#include "MainFun.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
#define IDS_WEBADDR _T("http://www.whhit.com")
/////////////////////////////////////////////////////////////////////////////
// CMainFun dialog
CMainFun::CMainFun(CWnd* pParent /*=NULL*/)
: CDialog(CMainFun::IDD, pParent)
{
//{{AFX_DATA_INIT(CMainFun)
//}}AFX_DATA_INIT
}
void CMainFun::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CMainFun)
DDX_Control(pDX, IDC_WRECORD, m_wrec);
DDX_Control(pDX, IDC_LIST1, m_ListCtrl);
//}}AFX_DATA_MAP
DDX_Control(pDX, IDC_SEARCH,btsearch);
DDX_Control(pDX, IDC_ADD,btadd);
DDX_Control(pDX, IDC_CHANGE,btchange);
DDX_Control(pDX, IDC_DELETE,btdelete);
DDX_Control(pDX, IDC_UPDATE,btupdate);
DDX_Control(pDX, IDC_QUIT,btquit);
DDX_Control(pDX, IDC_RECORD,btrecord);
DDX_Control(pDX, IDC_REVEAL,btreveal);
DDX_Control(pDX, IDC_RDEL,btrdel);
//DDX_Control(pDX, IDC_SEARCH,btsearch);*/
}
BEGIN_MESSAGE_MAP(CMainFun, CDialog)
//{{AFX_MSG_MAP(CMainFun)
ON_BN_CLICKED(IDC_SEARCH, OnSearch)
ON_BN_CLICKED(IDC_ADD, OnAdd)
ON_BN_CLICKED(IDC_CHANGE, OnChange)
ON_BN_CLICKED(IDC_DELETE, OnDelete)
ON_BN_CLICKED(IDC_QUIT, OnQuit)
ON_BN_CLICKED(IDC_UPDATE, OnUpdate)
ON_BN_CLICKED(IDC_RECORD, OnRecord)
ON_BN_CLICKED(IDC_REVEAL, OnReveal)
ON_BN_CLICKED(IDC_RDEL, OnRdel)
ON_WM_CTLCOLOR()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CMainFun message handlers
/*void CMainFun::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
if(FALSE== flag)
{
int k= pNMListView->iSubItem;
Sort(!m_bIsAsc,k);
m_ListCtrlx.DeleteAllItems();
this->Show();
}
*pResult = 0;
}*/
BOOL CMainFun::OnInitDialog() //主窗口初始化函数
{
CDialog::OnInitDialog();
//SetBitmaps(IDB_BITMAP1);
short shBtnColor = 100;
CBitmap bmp;
bmp.LoadBitmap(IDB_BITMAP1);//加载背景图并显示
brush.CreatePatternBrush(&bmp);
btsearch.SetIcon(IDI_ICON3);
btadd.SetIcon(IDI_ICON4);
btchange.SetIcon(IDI_ICON5);
btdelete.SetIcon(IDI_ICON6);
btupdate.SetIcon(IDI_ICON7);
btquit.SetIcon(IDI_ICON8);
btrecord.SetIcon(IDI_ICON11,(int)BTNST_AUTO_GRAY);
btrecord.OffsetColor(CButtonST::BTNST_COLOR_BK_IN, shBtnColor);
btrecord.SetTooltipText(_T("添加日志"));
btreveal.SetIcon(IDI_ICON1,(int)BTNST_AUTO_GRAY);
btreveal.OffsetColor(CButtonST::BTNST_COLOR_BK_IN, shBtnColor);
btreveal.SetTooltipText(_T("显示日志"));
btrdel.SetIcon(IDI_ICON2,(int)BTNST_AUTO_GRAY);
btrdel.OffsetColor(CButtonST::BTNST_COLOR_BK_IN, shBtnColor);
btrdel.SetTooltipText(_T("清空日志"));
//btsearch.SetIcon(IDI_ICON3);
/*EnableToolTips(TRUE);
m_toolTip.Create(this);
m_toolTip.Activate(TRUE);
CWnd* pW=GetDlgItem(IDC_SEARCH);//得到窗口指针
m_toolTip.AddTool(pW,"提示信息ddd");*/
//flag=true;
//flagg=true;
// TODO: Add extra initialization here
//m_ListCtrl.ShowWindow(SW_HIDE);
//为列表框选择相应模式并为其编号
m_ListCtrl.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
m_ListCtrl.InsertColumn(0,_T("编号"),LVCFMT_IMAGE|LVCFMT_LEFT);
m_ListCtrl.InsertColumn(1,_T("姓名"));
m_ListCtrl.InsertColumn(2,_T("年龄"));
m_ListCtrl.InsertColumn(3,_T("家庭住址"));
m_ListCtrl.InsertColumn(4,_T("电话"));
m_ListCtrl.InsertColumn(5,_T("QQ"));
m_ListCtrl.InsertColumn(6,_T("Email"));
m_ListCtrl.InsertColumn(7,_T("个人简历"));
//为列表项分配宽度
int j;
CRect rect;
m_ListCtrl.GetWindowRect(&rect);
double x=rect.right-rect.left;
for(j=0;j<4;j++)
{
m_ListCtrl.SetColumnWidth(j ,(int)(x/12));
}
//m_ListCtrl.SetColumnWidth(4,(int)(x/5));
for(j=4;j<7;j++)
{
m_ListCtrl.SetColumnWidth(j ,(int)(x/9));
}
m_ListCtrl.SetColumnWidth(7,(int)(x/3));
// return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
Listshow(); //调用显示数据表中数据函数
return true;
}
void CMainFun::OnSearch() //“查找”按钮消息函数
{
// TODO: Add your control notification handler code here
Csearch cs; //定义“查找”类实例
cs.DoModal(); //弹出查找对话框
}
void CMainFun::OnAdd() //“添加”按钮消息函数
{
// TODO: Add your control notification handler code here
Caddchange ca; //定义“添加与修改”类实例
if(ca.DoModal()==IDCANCEL)//弹出添加与修改对话框
Listshow(); //当“添加与修改”对话框推出时更新
}
void CMainFun::OnChange() //“修改”按钮消息函数
{
// TODO: Add your control notification handler code here
Cchange cc; //定义“修改”类实例
if(cc.DoModal()==IDCANCEL)//弹出修改对话框
Listshow(); //当“修改”对话框推出时更新
}
void CMainFun::OnDelete() //“删除”按钮消息函数
{
// TODO: Add your control notification handler code here
Cdelete cd; //定义“删除”类实例
if(cd.DoModal()==IDCANCEL)//弹出删除对话框
Listshow();//当“删除”对话框推出时更新
}
void CMainFun::OnQuit()
{
// TODO: Add your control notification handler code here
OnCancel();
}
/*void CMainFun::Output(CString memnum,CString memnam,int memage,CString memadd,CString memtel,CString memqq,CString memem,CString memdio)
{
int i=0;
CString sage;
m_ListCtrl.InsertItem(i,memnum,0);
m_ListCtrl.SetItemText(i,1,memnam);
sage.Format("%d",(int)memage);
m_ListCtrl.SetItemText(i,2,sage);
sage.Empty();
m_ListCtrl.SetItemText(i,3,memadd);
m_ListCtrl.SetItemText(i,4,memtel);
m_ListCtrl.SetItemText(i,5,memqq);
m_ListCtrl.SetItemText(i,6,memem);
m_ListCtrl.SetItemText(i,7,membio);
}
void CMainFun::Output(CString memnum, CString memnam, int memage, CString memadd, CString memtel, CString memqq, CString memem, CString memdio)
{
}
void CMainFun::show()
{
cmmf.Open();
cmmf.MoveFirst();
CString sage;
Csearch dlg;
int k=dlg.labelnum();
sage.Format("%d",k);
MessageBox(sage);
switch(0)
{
case 0:
int i=0;
m_ListCtrl.DeleteAllItems();
MessageBox("");
do
{
if(cmmf.m_memnum==cont)
{
m_ListCtrl.InsertItem(i,cmmf.m_memnum,0);
m_ListCtrl.SetItemText(i,1,cmmf.m_memnam);
sage.Format("%d",(int)cmmf.m_memage);
m_ListCtrl.SetItemText(i,2,sage);
sage.Empty();
m_ListCtrl.SetItemText(i,3,cmmf.m_memadd);
m_ListCtrl.SetItemText(i,4,cmmf.m_memtel);
m_ListCtrl.SetItemText(i,5,cmmf.m_memqq);
m_ListCtrl.SetItemText(i,6,cmmf.m_memem);
m_ListCtrl.SetItemText(i,7,cmmf.m_membio);
i++;
}
cmmf.MoveNext();
}while(!cmmf.IsEOF());
cmmf.Close();
break;
}
}
*/
//DEL void CMainFun::OnShowWindow(BOOL bShow, UINT nStatus)
//DEL {
//DEL CDialog::OnShowWindow(bShow, nStatus);
//DEL
//DEL // TODO: Add your message handler code here
//DEL
//DEL }
/*void CMainFun::Sort(BOOL isAsc,int secol)
{
if(cmmf.IsOpen())
cmmf.Close();
this->Select();
cmmf.Close();
CODBCFieldInfo fieldInfo;
m_Set.GetODBCFieldInfo(secol,fieldInfo);
if(isAsc)
{
m_Set.m_strSort=fieldInfo.m_strName+" ASC";
m_bIsAsc=TRUE;
}
else
{
m_Set.m_strSort=fieldInfo.m_strName+" DESC";
m_bIsAsc=FALSE;
}
m_Set.Requery();
}*/
void CMainFun::Listshow()//显示数据表中数据函数
{
cmmf.Open(); //打开数据表member
cmmf.MoveFirst(); //指到第一行数据处
int i=0; //设置行数递加
CString sage; //操作年龄
m_ListCtrl.DeleteAllItems();
while(!cmmf.IsEOF())//循环输出到列表中
{
m_ListCtrl.InsertItem(i,cmmf.m_memnum,0);
m_ListCtrl.SetItemText(i,1,cmmf.m_memnam);
sage.Format("%d",(int)cmmf.m_memage);
m_ListCtrl.SetItemText(i,2,sage);
sage.Empty();
m_ListCtrl.SetItemText(i,3,cmmf.m_memadd);
m_ListCtrl.SetItemText(i,4,cmmf.m_memtel);
m_ListCtrl.SetItemText(i,5,cmmf.m_memqq);
m_ListCtrl.SetItemText(i,6,cmmf.m_memem);
m_ListCtrl.SetItemText(i,7,cmmf.m_membio);
i++;
cmmf.MoveNext();
};
cmmf.Close(); //关闭数据表member
}
void CMainFun::OnUpdate() //“更新”按钮消息函数
{
// TODO: Add your control notification handler code here
Listshow(); //调用重载显示函数
MessageBox("更新成功!","小昕提示",MB_ICONINFORMATION);
}
void CMainFun::OnRecord() //“记录”按钮消息函数
{
// TODO: Add your control notification handler code here
/* CStdioFile MyFile("diary.txt",CFile::modeReadWrite|CFile::modeNoTruncate);
CString buffString;
MyFile.ReadString(buffString);//按行读出
MyFile.WriteString(buffString);//按行写入
MyFile.Close();
MyFile.WriteString(cont);
MyFile.Close();*/
fstream file; //定义用于读写文件的变量
CString cont;
m_wrec.GetWindowText(cont);//取得字符串
if(cont=="") {
MessageBox("你还未写记录","小昕提示",MB_ICONINFORMATION);
m_wrec.SetFocus();
}
else{
cont=cont+"\r\n"; //加入换行
file.open("diary.txt",ios::out|ios::app);//打开文件
file.write(cont,strlen(cont)); //cont写入文件
file.close(); //关闭文件
MessageBox("记录成功!","小昕提示",MB_ICONINFORMATION);
m_wrec.SetWindowText(0); //置空编辑框
m_wrec.SetFocus();
}
}
void CMainFun::OnReveal() //“显示”按钮消息函数
{
// TODO: Add your control notification handler code here
Cdiary ca; //定义“日志类”实例
ca.DoModal(); //弹出日志对话框
}
void CMainFun::OnRdel() //“清空”按钮消息函数
{
// TODO: Add your control notification handler code here
if(MessageBox("你确定要清空吗?","小昕提示",MB_OKCANCEL|MB_ICONQUESTION)==IDOK)
{
fstream file;
file.open("diary.txt",ios::trunc);//清空日记本中的内容
file.close();
}
}
HBRUSH CMainFun::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
pDC->SetBkMode(TRANSPARENT);
return brush;
// TODO: Change any attributes of the DC here
// TODO: Return a different brush if the default is not desired
//return hbr;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -