读书笔记(一)_VC++深入详解



  这本书第一章就是讲Windows程序内部运行机制,初看的话比较吃力,不过理解了之后对后面还是有一定的帮助。对窗口的设计,
注册,创建,显示及更新讲的很详细具体。
   私觉得句柄这个概念一定要好好理解,在之后会经常用到。
   记录一下最基本的得到某窗口的句柄。虽说主窗口和子窗口有不同的方法,不过更喜欢这个简单,通用。

CWnd* pWnd=FindWindow(NULL,_T("标题")); 

     ID或标题有一个就可以。

    之后对C++面向对象部分的讲解从结构体引进类讲的挺不错后面重载,虚函数部分就有点冗杂。
    这本书主要中心还是放在了Window编程,从MFC的框架,到绘图,文本,文件,和后面相对高级的多线程,网络编程,ActiveX控件。目前也是刚看完前面关于MFC的部分,MFC封装了大部分的windows API函数,在理解的基础上还是要大量接触各种函数,可以从基本控件的使用开始,下面是一些基础控件。(题外:在创建新的MFC AppWzard{exe}工程时对于MFC库的静态,动态的选择,一般为了节约编译时间选动态,不过有时编译时会提醒电脑上缺少一些文件,在不想再去下载那些dll文件的情况下可以选成静态)



      MFC部分也是才略微接触,还没什么感触。列举遇到的一些问题和解决方法 。


     背景图片和位图按钮的设置

BOOL CMANAMENU::OnInitDialog()
{
	CDialog::OnInitDialog();
    CBitmap bmp;
    bmp.LoadBitmap(IDC_PIC2);   //图片ID
	m_brush.CreatePatternBrush(&bmp);

	HINSTANCE hInstance;
    HBITMAP hBitmap2,hBitmap3;
    hInstance   =   ::AfxGetInstanceHandle();
    hBitmap2 =  ::LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_BUTTON3) );
	hBitmap3 =  ::LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_BUTTON4) );
    m_BtonBmp.SetBitmap(hBitmap2);
	m_color.SetBitmap(hBitmap3);
	return TRUE;  // return TRUE  unless you set the focus to a control
}

      子窗口出现主窗口隐藏因为主窗口仅仅是隐藏,

void CMODlg::OnButton1() 
{
	// TODO: Add your control notification handler code here
    GetDlgItem(IDC_EDIT1)->GetWindowText(m_E1);
	ShowWindow(SW_HIDE);
	if(m_E1=="ADMIN"||m_E1=="admin"){
	CMANAMENU *menu=new CMANAMENU;
	//跳转到管理员主界面
	menu->Create(IDD_MANAMENU,this);
    menu->ShowWindow(SW_SHOW);
	}
	else{
	CCUSTOMER_MAIN *menu=new CCUSTOMER_MAIN;
	//跳转到用户主界面
	menu->Create(IDD_CUSTOM_MAIN,this);
    menu->ShowWindow(SW_SHOW);
	}
    GetDlgItem(IDC_EDIT1)->SetWindowText("");
}

      关闭子窗口时添加ONCLOSE事件关闭主窗口 

void CMANAMENU::OnClose() 
{
	
	// TODO: Add your message handler code here and/or call default
	CWnd* pWnd=FindWindow(NULL,_T("RED TREE影院"));
	::SendMessage(pWnd->m_hWnd,WM_CLOSE,NULL,NULL);
	CDialog::OnClose();
}

   

    API方式连接数据库时注意有时要把libmysql.dll放入Debug中,不然识别不出其中的关于MYSQL的类

    #include <winsock.h>,#include <windows.h>重定义的话要在前面加上#define   _WINSOCKAPI_ 阻止编译器去处理后面的



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值