• 全部
  • VC综合技术
  • 互联网技术
  • MFC AppLauncher
  • .NET 技术
  • 界面
  • 进程
  • 算法
  • 硬件/系统
  • 数据库
  • VC++技术资源

VC在哪写自己的代码?

themargorp 2010-07-01 09:07:32
别骂我脑残,新手。
请问,VC在哪写自己的代码?
我就看到界面的,不知道在哪些自己的,
对于从程序开始时运行到程序结束使的代码应该放哪?多线程?
还有按钮有事件吗?
总之就是自己代码往哪加,谢了。
...全文
321 点赞 收藏 32
写回复
32 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
美猿君 2010-07-05
不要一口气吃成胖子,该做的准备工作还是要做的,我也是新手,都是基础学起的。
回复
songtown 2010-07-05
ding LZ
回复
guoln1010 2010-07-05
[Quote=引用 28 楼 themargorp 的回复:]
谢谢大家给的资料,在看了,还是要看书才会。我想问的那个不是MFC,我自己搞错了,应该是Win32项目,就是要自己画界面的那个。最后一个请求,能不能给我个例子看看.
[/Quote]
#include "stdio.h"
#include "windows.h"



LRESULT CALLBACK wndproc(
HWND hwnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam
);
HINSTANCE hInstance;

class win
{
public:
BOOL W_class();
BOOL create();
};


BOOL win::W_class()
{
WNDCLASS wdnclass;//设计窗口
wdnclass.style=CS_HREDRAW|CS_VREDRAW;;//窗口
wdnclass.lpfnWndProc=wndproc;//窗口指针很重要
wdnclass.cbClsExtra=0;//通常为0
wdnclass.cbWndExtra=0;//通常为0
wdnclass.hInstance=hInstance;//句柄
wdnclass.hIcon=LoadIcon(NULL,IDI_ERROR);//图标句柄
wdnclass.hCursor=LoadCursor(NULL,IDC_CROSS);//光标句柄
wdnclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);//背色句柄
wdnclass.lpszMenuName=NULL;
wdnclass.lpszClassName="zhuzi";//类的名字

return (RegisterClass(&wdnclass));//注册窗口
}

BOOL win::create()
{
HWND hwnd;
hwnd=CreateWindow("zhuzi","猪",WS_OVERLAPPEDWINDOW,
200,200,600,400,NULL,NULL,
hInstance,NULL);
//显示窗口
ShowWindow(hwnd,SW_SHOWNORMAL);
UpdateWindow(hwnd);
return hwnd;
}






int WINAPI WinMain(
HINSTANCE hInstance, // handle to current instance
HINSTANCE hPrevInstance, // handle to previous instance
LPSTR lpCmdLine, // command line
int nCmdShow // show state
)
{
win window
if(!window.W_class())
return 0;
if(!window.create())
return 0;





//消息循环
MSG msg;
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);//接收消息
DispatchMessage(&msg);//将接收的消息处理
}
return 0;
}

//过程函数
LRESULT CALLBACK wndproc(
HWND hwnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam
)
{
HDC hdc;
PAINTSTRUCT ps;
switch(uMsg)
{
case WM_PAINT:
hdc=BeginPaint(hwnd,&ps);
TextOut(hdc,0,0,"猪",strlen("猪"));
EndPaint(hwnd,&ps);
break;
case WM_CHAR:
char szchar[20];
sprintf(szchar,"ch%d",wParam);
MessageBox(hwnd,szchar,"zhuzi",MB_OK);
break;
case WM_LBUTTONDOWN:
if(IDYES==MessageBox(hwnd,"猪编程","zhuzi",MB_YESNO))
{
HDC hDC;
hDC=GetDC(hwnd);
TextOut(hDC,150,150,"猪万岁",strlen("猪万岁"));
ReleaseDC(hwnd,hDC);
}
break;
case WM_CLOSE:
if(IDYES==MessageBox(hwnd,"真的退出","zhuzi",MB_YESNO))
{
DestroyWindow(hwnd);
}
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd,uMsg,wParam,lParam);
break;
}
return 0;

回复
themargorp 2010-07-05
是不是一般都在WndProc过程里根据消息来写代码,比如case WM_KEYDOWN:之类的,或者多线程?
回复
themargorp 2010-07-05
谢谢大家给的资料,在看了,还是要看书才会。我想问的那个不是MFC,我自己搞错了,应该是Win32项目,就是要自己画界面的那个。最后一个请求,能不能给我个例子看看.
回复
vlongcom 2010-07-05
很好,楼上正解,建议楼主自己对着VS多摸索摸索
回复
liufang8318 2010-07-03
随便找本vc练一下,就知道怎么加代码啦,但是要熟悉,还有一段路!还在摸索。
支持LZ
回复
vnking 2010-07-03
[Quote=引用 21 楼 themargorp 的回复:]
给我点代码看看行吗?
[/Quote]

以下就是最典型的代码,仅供参考:



// Win32App3.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"

int main(int argc, char* argv[])
{
printf("我是老大我发飙!\n");
return 0;
}

回复
kemee 2010-07-03
[Quote=引用 21 楼 themargorp 的回复:]
给我点代码看看行吗?
[/Quote]

我靠哦,你连哪里写代码都不晓得,给你代码你不是更加看不懂?你说的VC肯定是指MFC,这框架有许多东西IDE会给你自动添加,我也是这么过来的,你自己找本书编个对话框,拖个按钮,双击进去写点功能,点点就知道了,比你在这里墨迹快多了,楼主勤快点啊,看着都着急
回复
vnking 2010-07-03
楼主建个简单工程,选择Win32 Application,再选择A sample win32 application

生成的工程只有:


// WinApp1.cpp : Defines the entry point for the application.
//

#include "stdafx.h"

int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
// TODO: Place code here.

return 0;
}



海阔天空任君写!
回复
baoyz 2010-07-03
先练习写对话框程序,安上一个按钮,点两下,就会提示新建一个函数,确定后,就到函数体代码区了。里面加点功能。
编译,点按钮,功能就实现了。
回复
jogger007 2010-07-02
[Quote=引用 16 楼 visualeleven 的回复:]
先看孙鑫的视频教程。。。
[/Quote]
第一次见部长支持孙鑫。。。
回复
S_S_Ge 2010-07-02
~~~~~~~~~~~~~~~
回复
Eleven 2010-07-02
先看孙鑫的视频教程。。。
回复
这不是鸭头 2010-07-02
[Quote=引用 14 楼 xianglitian 的回复:]
建议你先找本基础的书来看看
你这问题还真不太好回答
[/Quote]
回复
向立天 2010-07-02
建议你先找本基础的书来看看
你这问题还真不太好回答
回复
kemee 2010-07-02
这哪问的出来啊,cpp,h里写代码啊,过于基础的知识自己去学比来这问快的多了
回复
liweisdut 2010-07-02
[Quote=引用楼主 themargorp 的回复:]
别骂我脑残,新手。
请问,VC在哪写自己的代码?
我就看到界面的,不知道在哪些自己的,
对于从程序开始时运行到程序结束使的代码应该放哪?多线程?
还有按钮有事件吗?
总之就是自己代码往哪加,谢了。
[/Quote]
一开始,找些书书,找些实例,多看看,再跟着练一练,像这类的问题就不会出现了
回复
qq_heilongjiang 2010-07-02
要看是MFC程序还是什么呀
回复
wltg2001 2010-07-02
找本书看看吧
回复
相关推荐
发帖
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
帖子事件
创建了帖子
2010-07-01 09:07
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……