
C/C++
hackerain
这个作者很懒,什么都没留下…
展开
-
第四讲 画一条线
<br />建一个工程Draw一、画一条线(1)在DrawView.h头文件中,声明一个私有的成员变量:CPoint m_ptOrigin;在其构造函数中初始化为:m_ptOrigin=0;(2)在DrawView.cpp中,添加如下函数:void CDrawView::OnLButtonDown(UINT nFlags, CPoint point) { m_ptOrigin=point;//将该函数传递进来的点保存到m_ptOrigin中 CView::OnLButtonDow原创 2011-03-04 23:26:00 · 1146 阅读 · 0 评论 -
磁盘分区关键语句
一、利用MBR中的引导代码可以实现多系统的引导。多系统引导有两种方法可以实现:(1)Windows在引导代码中设置一段代码,以允许用户选择要进入的操作系统,即MBR中的主引导程序先加载Windows引导代码,然后再由Windows引导代码呈现给用户一个操作系统选择界面(2)改变MBR中的引导代码,修改后的引导代码会直接呈现给用户一个选项列表,由用户选择从哪个分区进行引导。这种方法,一般会占原创 2012-05-01 18:12:57 · 1020 阅读 · 0 评论 -
VC/C++的中文字符处理方式
一 引入问题代码 wchar_t a[3]=L”中国”,编译时出错,出错信息为:数组越界。但wchar_t 是一个宽字节类型,数组a的大小应为6个字节,而两个汉字的的unicode码占4个字节,再加上一个结束符,最多6个字节,所以应该不会越界。难道是编译器出问题了?二 解决引入问题所需的知识 主要需两方面的知识,第一个为字符尤其是汉字的编码,以及语言和工具的支持情况,第转载 2012-04-30 23:37:33 · 1413 阅读 · 0 评论 -
MFC视频教学第一课,做一个简单的界面,理解应用程序和操作系统之间的消息传递机制
#include #include LRESULT CALLBACK WinSunProc( HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); //WinMain是操作系统调用的,是系统的入口函数int WINAPI WinMain( HINSTANCE h原创 2010-11-21 22:42:00 · 2733 阅读 · 0 评论 -
第15讲 c++多线程
#include #include using namespace std;DWORD WINAPI ThreadOne(LPVOID lpParameter);DWORD WINAPI ThreadTwo(LPVOID lpParameter);in原创 2011-07-05 23:48:27 · 1155 阅读 · 0 评论 -
大一新生如何学好C++
c++可以说是一上大学,计算机专业的同学们接触到的第一个专业课程。通过c++,能让我们一窥计算机世界的大门,走进这个奇妙的世界……我们在做一件事情之前,一定很想弄清楚为什么要做这件事,只有知道了为什么,我们才能够安心的去做这件事。所以在说如何学习c++之前,我们先说说原创 2011-09-25 18:59:15 · 4022 阅读 · 0 评论 -
基于vs2008的一个简单的多线程聊天程序(有界面)
这个是看了孙鑫老师的视频之后,敲出来的代码,虽然老师的视频讲解的已经很好了,但是在vs里运行起来,会碰到一些令人头疼的问题,终于靠着强大的网络,将这些问题一个一个都解决了。这个基于线程、socket和对话框的小的聊天程序,目的是在于理解多线程,熟悉socket,将其放在对话框中去原创 2011-07-08 00:21:36 · 6770 阅读 · 3 评论 -
第十二讲__文件的操作和注册表的操作
<br />一、 常量指针和指针常量的区别:常量指针是指针所指向的内容是常量,不可修改,但是指针本身存储的是地址,是可以修改的。形式是:const char * p。指针常量是指针本身是常量,不可修改,但是指针所指向的内容是可以修改的,和常量指针正好相反。形式是:char * const。以下用的是C语言中的文件函数:二、 文件的写入与读取:1、 在菜单栏里创建一个文件写入与读取的菜单项,并分别对其进行命令响应。2、 在文件写入的命令响应函数中,进行如下操作:void CFile原创 2011-03-04 23:41:00 · 823 阅读 · 0 评论 -
第十一讲__图形的保存与重绘
<br />一、 所画图形的重绘:在第十讲所用的工程上继续:1、新增一个类CGraph,用来存储图形的信息,以便在重绘时使用。在类中添加如下成员变量:UINT m_LineWidth; int m_LineStyle; COLORREF m_clr; UINT m_nDrawType; CPoint m_ptOrigin; CPoint m_ptEnd;再增加一个构造函数,用来传递参数:CGraph::CGraph(UINT m_nDrawType,CPoint m_pt原创 2011-03-04 23:39:00 · 974 阅读 · 0 评论 -
第十讲__绘图
<br />一、 创建一个简单的绘图软件新建一个Graphic的可执行程序:在资源中,创建一个对话框,改变其ID为IDD_DIG_SETTING,更名其Caption为“设置”。线的宽度和画笔的选择:1、 在对话框上添加一个静态文本框和编辑框,用来接收设置画笔的宽度。并且改变编辑框的ID为IDC_LINE_WIDTH。2、 给对话框添加一个和它相对应的类:CSettingDlg。3、 给编辑框添加一个和它对应的UINT型的值变量:m_nLineWidth。4、 在菜单资源中,添加原创 2011-03-04 23:37:00 · 954 阅读 · 2 评论 -
第九讲__应用程序外观修改工具栏状态栏
<br />新建一个单文档工程Style:1、 修改窗口的大小、位置等信息:在窗口创建之前修改窗口的信息。在CMainFrame类中的PreCreateWindow()改变结构体变量cs中相应成员的值,就可以改变相应窗口的信息。如:改变窗口的大小: cs.cx=300;cs.cy=200;改变窗口的显示位置:cs.x=100;cs.y=100;修改窗口的标题:cs.style&=~FWS_ADDTOTITLE;//cs.style=WS_OVERLAPP原创 2011-03-04 23:34:00 · 1285 阅读 · 0 评论 -
第八讲 对话框2
<br />对话框一、“你能抓到我吗?”小游戏:①创建一个新的对话框工程Test,用对话框的工具栏创建两个按钮,用ClassWizard创建一个针对这两个按钮的类CSuo。因为要将两者之一在开始的时候隐藏起来,所以要将其中之一的属性的Visible勾选去掉。②再通过ClassWizard对这两个按钮增加两个控件变量到类CTestDlg中,并且在该类中包含上头文件#include “Suo.h”。③在类CSuo中,添加一个CSuo类的指针变量p_btn。④在CTestDlg类中的OnIni原创 2011-03-04 23:33:00 · 1408 阅读 · 0 评论 -
第七讲 对话框
<br />对话框一、 创建模态对话框1、 先创建一个对话框的资源2、 再创建一个子菜单资源3、 再增加一个和该对话框相对应的类4、 再针对增加的子菜单资源添加命令响应函数:void CDeadView::OnDialog() { // TODO: Add your command handler code here CDeadDlg dlg;//该类和对象就是和新建的模态对话框对应的。一个模态对话框就有一个和它相对应的对话框类。 dlg.DoModal();//添加原创 2011-03-04 23:32:00 · 762 阅读 · 0 评论 -
第六讲 菜单设计
<br />菜单设计零、引子:消息的分类:标准消息:除WM_COMMAND外,所有以WM_开头的消息,从CWnd派生的类都可以接收这类消息。命令消息:来自菜单项、工具栏按钮的消息,这类消息都以WM_COMMAND呈现,在MFC中,不同的命令消息由不同的ID号来标识,从CCmdTarget类派生出的类都可以接收这类消息。通告消息:由控件产生的消息,如按钮的单击,为的是向其父窗口通知事件的发生,这类消息也以WM_COMMAND呈现,从CCmdTarget类派生出的类都可以接收这类消息。(原创 2011-03-04 23:30:00 · 868 阅读 · 0 评论 -
第五讲 文本编程
<br />新建一个Text工程1、 创建一个自定义的插入符,也就是光标:在TextView.cpp中添加如下函数:int CTextView::OnCreate(LPCREATESTRUCT lpCreateStruct) {//该函数是在窗口创建好之后就执行的函数。if (CView::OnCreate(lpCreateStruct) == -1) return -1;CreateSolidCaret(2,20);//自己定义的光标的宽度和高度。ShowCaret();/原创 2011-03-04 23:28:00 · 882 阅读 · 0 评论 -
jdbc连接access
如果想省事,用access作为数据库是最方便的了,配置如下:1、把mdb文件工程目录下2、url="jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ=shopJXC.mdb";3、con=DriverManager.getConnection(url,user,password);//连接数据库对象connectDB,原创 2012-06-05 10:30:20 · 835 阅读 · 0 评论