网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
05月25日漏签0天
vc吧 关注:28,907贴子:110,666
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 4回复贴,共1页
<<返回vc吧
>0< 加载中...

标记为证

  • 取消只看楼主
  • 收藏

  • 回复
  • waru123
  • 锋芒毕露
    3
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
本人学机械的,但是对编程兴趣比较大。
从今天开始学习,争取每天的业余时间进行学习,学习心得和代码每天都在这留下印记。
占个坑,晚上下班开学。


  • waru123
  • 锋芒毕露
    3
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
作为新手,需要选择一个入门教程。
我在六维上逛了逛,下了孙鑫的教程,教程是03年出的。也不知道有没有过时一说。总之,学着没坏处 !
今天晚上看了第一讲,尼玛两个小时啊!!!我说怎么只有20课呢!!
第一课主要讲的是窗口的创建和内部运行的原理,孙老师用汽车制造为例,解释了操作系统、运用程序、消息队列和输入输出设备之间的关系,我觉得还是十分形象的。
MSDN果然十分强大,这是我的感受,编程时候借助MSDN的帮助,可以了解函数的写法和意义。以后可以下些代码对着看,仿着写,争取提高我的编程水平。
今天太晚了,回去睡觉了。明天来尝试自己编译一个窗口文件。


2025-05-25 08:31:46
广告
  • waru123
  • 锋芒毕露
    3
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include <windows.h>
#include <stdio.h> LRESULT CALLBACK WinSunProc(
HWND hwnd, // handle to window
UINT uMsg, // message identifier
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
); int WINAPI WinMain(
HINSTANCE hInstance, // handle to current instance
HINSTANCE hPrevInstance, // handle to previous instance
LPSTR lpCmdLine, // command line
int nCmdShow // show state
)
{
WNDCLASS wndcls;
wndcls.cbClsExtra=0;
wndcls.cbWndExtra=0;
wndcls.hbrBackground=(HBRUSH)GetStockObject(GRAY_BRUSH);
wndcls.hCursor=LoadCursor(NULL,IDC_WAIT);
wndcls.hIcon=LoadIcon(NULL,IDI_ASTERISK);
wndcls.hInstance=hInstance;
wndcls.lpfnWndProc=WinSunProc;
wndcls.lpszClassName="waru123";
wndcls.lpszMenuName=NULL;
wndcls.style=CS_HREDRAW | CS_VREDRAW;
RegisterClass(&wndcls); HWND hwnd;
hwnd=CreateWindow("waru123","我的VC++学习之旅",WS_GROUP,
100,100,800,600,NULL,NULL,hInstance,NULL); ShowWindow(hwnd,SW_SHOWNORMAL);
UpdateWindow(hwnd); MSG msg;
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
} LRESULT CALLBACK WinSunProc( //上面有了,为什么这里又出现一遍?
HWND hwnd, // handle to window
UINT uMsg, // message identifier
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
)
{
switch(uMsg) //为什么是uMsg switch选择的是信息,写Msg却是错误的
{
case WM_CHAR:
char szChar[20]; //这数组里面数为20,这个是怎么确定的?
sprintf(szChar,"char is %d",wParam);
MessageBox(hwnd,szChar,"你好",0);
break;
case WM_LBUTTONDOWN:
MessageBox(hwnd,"mouse clicked","再见",0);
HDC hdc;
hdc=GetDC(hwnd);
TextOut(hdc,0,50,"恭喜你成功左击",strlen("恭喜你成功左击"));
ReleaseDC(hwnd,hdc);
break;
case WM_PAINT: //这个WM_PAINT到底是个什么样的消息??说明看的不太懂。是重绘吗?不对啊,重绘应该是updateWindow吧?
HDC hDC;
PAINTSTRUCT ps;
hDC=BeginPaint(hwnd,&ps);
TextOut(hDC,0,0,"啦啦啦啦,第一个小窗口",strlen("啦啦啦啦,第一个小窗口"));
EndPaint(hwnd,&ps);
break;
case WM_CLOSE:
if(IDYES==MessageBox(hwnd,"是否真的结束?","再见",MB_YESNO))
{
DestroyWindow(hwnd);
}
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd,uMsg,wParam,lParam);
}
return 0;
} //最后,还有两个问题不是很明白,一个是wParam和lparam的区别,还有一个是_stdcall和_cdecl这两个的区别。
//另外,我看孙老师编程的时候,wndcls.hbrBackground 比如说这程序,他就打了几个字,然后能自动弹出下拉菜单选择需要定义的参数,这个是怎么做到的?是输入法还是VC里面设置的呢?


  • waru123
  • 锋芒毕露
    3
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

而且我编译出的结果右上角怎么没有最小最大化按钮了啊!!


  • waru123
  • 锋芒毕露
    3
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
我发现我基础不够好, 花一段时间我来从新巩固下自己的基础


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 4回复贴,共1页
<<返回vc吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示