vc 写一个简单的菜单程序

vc 写一个简单的菜单程序,第1张

lresult

callback

wndproc(hwnd

hwnd,

uint

message,

wparam

wparam,

lparam

lparam){

............................

switch

(message)

{

case

wm_command:

wmid

=

loword(wparam)

wmevent

=

hiword(wparam)

//

分析菜单选择:

switch

(wmid)

{

case

你要d出菜单的控件id

:

hpopmenu=createpopupmenu()

appendmenua(hpopmenu,mf_string,idc_menu_speackto,(lpcstr)"悄

悄话")

appendmenua(hpopmenu,mf_string,idc_menu_kick,(lpcstr)"踢出")

//创建2个菜单项

trackpopupmenu(hpopmenu,tpm_leftbutton,mousepos.x,mousepos.y,0,hwnd,null)

}

case

idc_menu_kick:

{

//在这里处理菜单项点击

}

break

case

idc_menu_speackto:

//在这者盯里处理菜单项码蔽点击

break

...............

}}

这是我程首模和序里抄来的

你看下有没用

是VC还是C++啊?不要混淆了,VC的话使用MFC Appwizard建立一个对话框的应用程序,放一个static控件,一个edit控件,两个按钮,为edit控件关联变量,添加按钮的激渗冲消息响应函数。可以d出MessageBox来显示错误或正确。

如果明歼是用C++的话,用if语句就可以实现。

#include <iostream.h>

void main()

{

int i

cout<<"1+1等于几?"<<endl

cin>>i

if(i==2)

cout<<"你的回答是正确的"<<endl

else

cout<<喊斗"回答错误!"<<endl

}

这是一个采用winapi编写的socket网络聊天通讯程序,该段代码为服务器端,使用udp通讯协议

#include <Winsock2.h>

#include <stdio.h>

void main()

{

WORD wVersionRequested

WSADATA wsaData

int err

wVersionRequested = MAKEWORD( 1, 1 )

//初始化winsocket

err = WSAStartup( wVersionRequested, &wsaData )

if ( err != 0 ) {

return

}

如果本地windows系统地socket库版本号不是1.1,则退出

if ( LOBYTE( wsaData.wVersion ) != 1 ||

HIBYTE( wsaData.wVersion ) != 1 ) {

WSACleanup( )

return

}

//创建socket服务,使用udp协议

SOCKET sockClient=socket(AF_INET,SOCK_DGRAM,0)

SOCKADDR_IN addrSrv

//本地服务地址为192.168.1.107,端口号为6000

addrSrv.sin_addr.S_un.S_addr=inet_addr("192.168.1.107")

addrSrv.sin_family=AF_INET

addrSrv.sin_port=htons(6000)

char recvBuf[100]//接收数据包

char sendBuf[100]//发送数据包

char tempBuf[200]//临时存储区

int len=sizeof(SOCKADDR)

while(1)

{

printf("Please input data:\n")

//用户输入一串字符串

gets(sendBuf)

//向客户端提交字符串数据包

sendto(sockClient,sendBuf,strlen(sendBuf)+1,0,

(SOCKADDR*)&addrSrv,len)

//从客棚信户端接收应答纤和信消息

recvfrom(sockClient,recvBuf,100,0,(SOCKADDR*)&addrSrv,&len)

//如果接收的应答字符串首位字符为“q”,则告知对方对话结束

if('q'==recvBuf[0])

{

sendto(sockClient,"q",strlen("q")+1,0,

(SOCKADDR*)&addrSrv,len)

printf("Chat end!\n")

break

}

//打印出对方毁轮聊天的ip和聊天内容

sprintf(tempBuf,"%s say : %s",inet_ntoa(addrSrv.sin_addr),recvBuf)

printf("%s\n",tempBuf)

}

//关闭socket服务

closesocket(sockClient)

WSACleanup()

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12347176.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存