VC编程练习之API笔记(一)

1、 取得、设置控件文本:

    CString str;

    GetDlgItem(IDC_STATIC)->GetWindowText(str);

    GetDlgItem(IDC_STATIC)->SetWindowText("my love!");

2、创建按钮:

    Cbutton m_btn;

    M_btn.create(“要显示的文本”, 样式(参见MSDN), Crect(大小、位置), this, 按钮ID);

    销毁:m_btn.DestroyWindow();

3、在按钮组中设置或取消选择某个按钮:

    CheckRadioButton(IDC_RADIO1, IDC_RADIO3, IDC_RADIO1);//当前选中按钮1

    选择一个单选按钮或复选框:

    SetCheck(int nCheck);//BST_UNCHECKED-没选中,BST_CHECKED-选中,BST_UNDETERMINATE-按钮处于不确定状态

4、获取按钮组中被选中的按钮的ID:

    UINT nID1 = GetCheckedRadioButton(IDC_RADIO1,IDC_RADIO3);

   获取指定ID号的按钮的指针:Cbutton *ptn; ptn = (CButton *)GetDlgItem(nID2[i]);

5、设置/取得按钮的文本:Cstring str;SetDlgItemText(str); GetWindowText(str);

6、VC++单文档给菜单加响应函数: 

   1、先创建一个单文档应用程序,名为:Dialog。
   2、打开ResourceView视图,右击Dialog文件夹,选择"插入Dialog",插入一个对话框。
   3、双击对话框空白处,弹出"Adding a Class"窗口,选择单选项"Create a new class",弹出"New Class"窗口,在Name框中输入"CCIDD_DIALOG1",单击"OK"。其中"C"为"类的缩写,"CIDD_DIALOG1"是你自己起的名字。
   4、打开ResourceView视图中的Menu文件夹,双击"IDR_MAINFRAME",展开"文件"菜单,右击"新建"菜单项,选择"属性",查看其ID为"ID_FILE_NEW"。
   5、单击"查看|建立类向导"菜单项,弹出"MFC ClassWizard"窗口,在第一个选项卡下选择Class name:为"CDialogView",ObjectIDs:为"ID_FILE_NEW",Message:为"COMMAND"。单击"Add Function",在弹出的窗口中单击"OK",返回"MFC ClassWizard"窗口,单击"Edit Code",在函数中添加如下代码:
    CCIDD_DIALOG1 dlg;
    if(dlg.DoModal()==IDOK)
    Invalidate();
并在本窗口顶部添加代码:#include "CIDD_DIALOG1.h" 用以包含对话框头文件。在StdAfx.h文件中添加#include "MainFrm.h"

扩展:在弹出的对话框添加按钮实现弹出对话框的收缩/扩展:

        1、  在对话框上添加按钮IDD_BUTTON1,并添加一个图像控件;

        2、  添加按钮的单击相应代码:

void CCIDD_DIALOG1::OnButton1() 
{
	// TODO: Add your control notification handler code here
	CString str;
	GetDlgItemText(IDC_BUTTON1, str);//获取按钮值
	if("扩展<<" == str)
	{
		SetDlgItemText(IDC_BUTTON1, "收缩>>");
	}
	else
	{
		SetDlgItemText(IDC_BUTTON1, "扩展<<");
	}
	static CRect rectLarge;
	static CRect rectSmall;
	if(rectLarge.IsRectNull())	//检查对话框是否被赋值
	{
		CRect temp;
		GetWindowRect(&rectLarge);	//获取当前对话框的位置
		GetDlgItem(IDC_PICTURE)->GetWindowRect(&temp);
		rectSmall.top = rectLarge.top;
		rectSmall.left = rectLarge.left;
		rectSmall.right = rectLarge.right;
		rectSmall.bottom = temp.bottom;
	}
	if("收缩>>" == str)
	{
		SetWindowPos(NULL, 0, 0, rectSmall.Width(), rectSmall.Height(), SWP_NOMOVE | SWP_NOZORDER);//对话框重新设置
	}
	else
	{
		SetWindowPos(NULL, 0, 0, rectLarge.Width(), rectLarge.Height(), SWP_NOMOVE | SWP_NOZORDER);//对话框扩展
	}
}

本笔记产生的源代码工程已上传: http://download.csdn.net/detail/woshixiongge/6699867,希望跟大家一起学习。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值