1、添加图片

1)静态加载图片,直接在resourceView中控件设置就可以以实现

2)动态加载时,按照鸡啄米的教程http://www.jizhuomi.com/software/193.html操作时,编译后图片不显示,是因为没有把图片控件的type类型设置成BitMap

3)动态载入图片:图像控件定义变量为CStatic  m_jzmPicture

  CString m_strfile; /***你在文件选择对话框中选中的文件名***/
CRect r;
GetClientRect(&r);
CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,
"Bmp files(*.bmp)|*.bmp|",NULL);
if(dlg.DoModal ())
{
m_strfile=dlg.GetPathName ();
}
HBITMAP hbitmap=(HBITMAP)LoadImage(AfxGetInstanceHandle(),
m_strfile,
IMAGE_BITMAP,
r.Width()/,
r.Height()/,
LR_LOADFROMFILE);
m_jzmPicture.SetBitmap(hbitmap);
MessageBox("loading");

2、单选列表视图控件

列表视图控件提供了CListCtrl类,

  例子参考http://www.jizhuomi.com/software/197.html的

  

  如果想单击某列,在另一个界面显示时,首先添加一个Dialog和对应的类CShowLanguage.cpp,将传递的参数设置成全局变量。Example1.h中

#include "ShowLanguage.h"
extern CString str;

在Example1.cpp中重定义,然后在原来函数上添加这个函数调用窗口函数

CString str;
void CExample5Dlg::OnNMClickProgramLangList(NMHDR *pNMHDR, LRESULT *pResult)
{
//强制类型转换
LPNMITEMACTIVATE pNMTItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR); CShowLanguage shlang;
// TODO: 在此添加控件通知处理程序代码
*pResult = ; //选择语言的名字字符串
CString strLangName;
CString strLangrank11;
CString strLangrank10; NMLISTVIEW *pNMListView=(NMLISTVIEW*)pNMHDR; if(-!=pNMListView->iItem)//如果iItem不是-1,则有列表被选中
{
//获取被选中列表项第一个子项的文本
strLangName=m_programLangList.GetItemText(pNMListView->iItem,);
strLangrank11=m_programLangList.GetItemText(pNMListView->iItem,);
strLangrank10=m_programLangList.GetItemText(pNMListView->iItem,);
//字符串拼接
str=strLangName;
str+=" ";
str+=strLangrank11;
str+=" ";
str+=strLangrank10;
//将鼠标点中的语言显示在编辑框中
//SetDlgItemText(IDC_LANG_SEL_EDIT,strLangName);
//SetDlgItemText(IDC_LANG_MESS_EDIT,str);
shlang.DoModal(); }
}

在CShowLanguage.cpp中

#include "Example5Dlg.h"
BOOL CShowLanguage::OnInitDialog()
{
CDialog::OnInitDialog(); SetDlgItemText(IDC_LANG_MESS_EDIT,str);
return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
}

3.存储数据到制定文件中

静态文本框、编辑框IDC_INFOR_EDIT1、按钮IDC_BUTTON2

在编辑框中输入文字信息,点击按钮触发按钮对应的消息函数OnBnClickedButton2(),

void CShowLanguage::OnBnClickedButton2()
{
// TODO: 在此添加控件通知处理程序代码 CString strText(_T("")); GetDlgItemText(IDC_INFOR_EDIT1,strText);//获取edit中的数据
int i;
try
{
CStdioFile file;
//打开文件,文件不存在就创建
i=file.Open(_T("abx.txt"),CFile::modeCreate|CFile::modeReadWrite);
file.WriteString(strText);
//file.WriteString(str); //全局变量中的信息
file.Close();
}catch(CFileException * e)
{
e->ReportError();
e->Delete();
}
}
//得到当前时间
CTime time;
time=CTime::GetCurrentTime();
//将当前时间转换成标准时间
CString data=time.Format(_T("%Y-%m-%d %H:%M:%S %W-%A"));

  

MFC笔记4的更多相关文章

  1. MFC笔记

    一.Win32基本程序概念 所有的windows程序都必须载入windows.h MFC程序都有一个Stdafx.h文件,它载入了MFC框架必须的文件. Windows程序以消息为基础,以事件驱动之. ...

  2. MFC笔记10

    1. CDC MemDC1; MemDC1.SetBkMode(OPAQUE); 背景模式,VC6下面有三种:/* Background Modes */#define TRANSPARENT 1// ...

  3. MFC笔记7

    1.VS中显示行号 工具 -> 选项 -> 文本编辑器 -> C/C++ -> 行号 2.VS中调整字体大小 工具 -> 选项 -> 环境->字体和颜色 3. ...

  4. MFC笔记6

    1.MFC文件的读写操作 写操作 创建一个编辑框(IDC_INFOR_EDIT1),在里面输入信息,创建一个按钮(IDC_BUTTON),点击按钮会触发(OnBnClickedButton2()函数) ...

  5. MFC笔记5

    1.MessageBox()             引用自(http://www.douban.com/note/40199603/) 一 函数原型及参数 function MessageBox(h ...

  6. MFC笔记3

    1. C6有默认的提示代码功能,但是其默认的快捷键是Ctrl + Space,这一般情况下是切换输入法快捷键,所以,只需重新设置一下快捷键就可以实现提示代码功能,具体设置位置如下: 工具(T) -&g ...

  7. MFC笔记2

    1.Create()函数创建,该函数原型如下: BOOL Create( LPCTSTR lpszCaption, DWORD dwStyle, const RECT& rect, CWnd* ...

  8. MFC笔记1

    1.在对话框文档中定义两个定时器,每间隔5秒弹出一个消息框提示“定时器1”,每隔5秒弹出一个消息框提示“定时器2” UINT ID_TIMER1 = 1 , ID_TIMER2 = 2;   //设置 ...

  9. MFC笔记(DN)

    01:MFC应用程序编程 02:MFC菜单.工具栏.状态栏 03:视图窗口

  10. MFC笔记<持续更新>

    1.设置垂直滚动条的位置在末尾 SCROLLINFO si; GetScrollInfo(SB_VERT, &si, SIF_PAGE | SIF_RANGE | SIF_POS); si.f ...

随机推荐

  1. CC攻击原理及防范方法

    一. CC攻击的原理: CC攻击的原理就是攻击者控制某些主机不停地发大量数据包给对方服务器造成服务器资源耗尽,一直到宕机崩溃.CC主要是用来消耗服务器资源的,每个人都有这样的体验:当一个网页访问的人数 ...

  2. git的优缺点

      git可以说是世界上最先进的版本控制系统,大多语句的执行为linux语句,也不难怪,,起初他就是为了帮助开发linux开发内核而使用. 我们先来说git的主要功能,知道了这个,我们也就知道了为什么 ...

  3. Codeforces1062A. A Prank(暴力)

    题目链接:传送门 题目: A. A Prank time limit per test second memory limit per test megabytes input standard in ...

  4. Idea 2017.3以后版本的破解

    自从升级到idea2017.3之后,之前的license server破解方法貌似已失效.于是找到大神用的破解插件,很好很强大. 安装好idea之后不要打开软件,从http://idea.lanyus ...

  5. Mad LIbs小游戏

    c1=input('请输入摄氏温度;') c2=float(c1)*9/5+32 print('摄氏温度转换成华氏温度是{}'.format(c2)) name1=input('请输入名字:') na ...

  6. C++ 值传递、指针传递、引用传递详解

    C++ 值传递.指针传递.引用传递详解 最近写了几篇深层次讨论数组和指针的文章,其中提到了“C语言中,所有非数组的形式参数传递均以值传递形式” 数组和指针背后——内存角度 语义"陷阱&quo ...

  7. Java分布式锁

    分布式锁简述 在单机时代,虽然不存在分布式锁,但也会面临资源互斥的情况,只不过在单机的情况下,如果有多个线程要同时访问某个共享资源的时候,我们可以采用线程间加锁的机制,即当某个线程获取到这个资源后,就 ...

  8. LeetCode - Unique Email Addresses

    Every email consists of a local name and a domain name, separated by the @ sign. For example, in ali ...

  9. oracle获取连续时间

    SELECT rownum, (to_date('2015-01-01', 'yyyy-mm-dd') + rownum - 1) AS show_time FROM dualCONNECT BY r ...

  10. 依据Axis2官网的高速入门英文文档总结

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/ksdb0468473/article/details/29918027 首先在Eclipse中创建一 ...