| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 997 人关注过本帖
标题:求助啊,大家帮帮忙
只看楼主 加入收藏
随便了
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2007-4-2
收藏
 问题点数:0 回复次数:13 
求助啊,大家帮帮忙
求助:用VC++编写一个有对话界面的程序,其中用到的控件有COMBO等,现在请问,如果COMBO有两个选项:"a"和"b",令:用户选择"a"时令变量x=1;用户选择"b"时令x=2.这个代码怎么编写啊?
另外,我双击COMBO控件的时候自动跳到代码部分,如下
void CTest02Dlg::OnEditchangeCombo2()
{
}
是不是把代码写在大括号内就可以了啊?如果是的话,代码怎么写?
谢谢了啊,在线等答案,小弟我是菜鸟
搜索更多相关主题的帖子: 大括号 在线 用户 
2007-04-02 12:03
边城路人
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:9
帖 子:591
专家分:0
注 册:2007-3-8
收藏
得分:0 

是啊
你也可以通过类向导来写的
那里也会有些说明的


当你开始怀疑自己时,说明你已经失去了判断力
2007-04-02 22:16
边城路人
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:9
帖 子:591
专家分:0
注 册:2007-3-8
收藏
得分:0 
你是干什么用的阿?
把你的设计说明说一下好吗?

当你开始怀疑自己时,说明你已经失去了判断力
2007-04-02 22:28
边城路人
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:9
帖 子:591
专家分:0
注 册:2007-3-8
收藏
得分:0 
你先给组合框控件添加一个变量m_combox
然后在对话框的实现代码区(就是.cpp文件)的初始化函数BOOL CShiyanDlg::OnInitDialog()
里添加如下的代码:
CString str[2]={"a","b"};
for(int i=0;i<2;i++)
{
m_combox.InsertString[i];
}
m_combox.SetCurSel(0);
然后添加ON_CBN_EDITCHANGE的消息处理函数void CShiyanDlg::OnEditchangeCombox()
在这里就可以写你要实现的功能了

当你开始怀疑自己时,说明你已经失去了判断力
2007-04-02 22:34
边城路人
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:9
帖 子:591
专家分:0
注 册:2007-3-8
收藏
得分:0 

不好意思阿
由于写的急了,刚才有点错误 m_combox.InsertString[i];
改成m_combox.InsertString(i,str[i]);就可以了
实在对不起阿


当你开始怀疑自己时,说明你已经失去了判断力
2007-04-02 22:45
余来
Rank: 6Rank: 6
等 级:贵宾
威 望:26
帖 子:956
专家分:18
注 册:2006-8-13
收藏
得分:0 

先响应CComboBox控件的CBN_SELCHANGE消息,然后在消息中加如如下代码
{
int pos=m_combobox.GetCurSel() //返回被选择的项,其中m_combobox
//是CComboBox控件的变量

if ( pos == 0 ) //当pos=0;时,表示选择了第一项这里就是a了
x=1;
if ( pos == 1) //选择了第二项,。。。
x=2;


2007-04-02 23:05
边城路人
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:9
帖 子:591
专家分:0
注 册:2007-3-8
收藏
得分:0 
int index=m_combox.GetCurSel();//获取当前选择的项
,。。。。。。
if(index==0)
{
pDC->DrawText("x=1",&rect,DT_CENTER);
pDC->SelectObject(oldfont);
cf.DeleteObject();
}
else
{
pDC->DrawText("x=2",&rect,DT_CENTER);
pDC->SelectObject(oldfont);
cf.DeleteObject();
}
这样好像也可以的
不妨搂主试试

当你开始怀疑自己时,说明你已经失去了判断力
2007-04-03 08:31
边城路人
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:9
帖 子:591
专家分:0
注 册:2007-3-8
收藏
得分:0 
我是在一个静态文本里显示出来
用户选择"a"时令变量x=1;
用户选择"b"时令x=2.

当你开始怀疑自己时,说明你已经失去了判断力
2007-04-03 08:32
随便了
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2007-4-2
收藏
得分:0 
回复:(随便了)求助啊,大家帮帮忙

对了,补充一下我的问题
经理让我做一个小软件,以实现如下功能:用户选择参数一(下拉菜单,应该是控件COMBOBOX吧?),输入参数二(文本输入框,应该是EDIT BOX),根据某一公式计算结果显示在控件"static text"(参数有好多个,我简单说成这样)但其实功能很简单的,只是我以前只学过一点C和C++,上机时都是那种类似DOS界面的那种人机对话界面,但现在要做的是类似于QQ登陆界面可以选择参数和输入参数的软件,所以,不会啊,郁闷,我是市场部的又不是研发部的,但也没办法,经理给的任务.
而且,我开始时用.NET编译出一个几十K大小的软件,但由于运行这个软件要安装一个20M的所谓什么安装包,让我很郁闷,所以不采用这个软件,只好改用VC++编写.
现在我想请教各位高手呵呵,我想知道一些很简单的语句是怎么用的(因为没学过,简单的语句对我来说就是很难)
比如,
1,现在有一个COMBO BOX有选项A和B,用户选A就令变量X=1,选B则X=2,语句怎么写呢?
2,用户在EDIT BOX中输入一个数字,令Y=这个数字,怎么写语句啊?
3,变量V=X*Y,让计算结果V显示在控件STATIC TEXT中,怎么写啊?
只要这3个会了,其他就很简单了,我其实满喜欢编程玩的,但时间太紧了,不能系统的学,来不及啊.

再把我碰到的具体问题写上来,让各位知道我错在哪
我双击控件COMBO BOX后跳到写代码的地方
void CTest05Dlg::OnEditchangeCombo1()
{
// TODO: Add your control notification handler code here

}
然后根据我可怜的理解能力,我这么写代码的
void CTest05Dlg::OnEditchangeCombo1()
{
// TODO: Add your control notification handler code here
int x1=0;
switch(IDC_COMB01.text)
{case 1: x1=1; break;
case 2: x1=2; break;
default: x1=3; break;}

}
当然是不能运行的了
error C2065: 'IDC_COMB01' : undeclared identifier
我在想:我是不是把类和对象搞混了?拿"IDC_COMB01.text"来说,我觉得就应该是ID后面加个"."再接个类似CAPTION或是TEXT之类的
啊,疯了,求各位帮忙啊
各位如果不想回答我所有的问题,那请回答我部分问题,但务必请回答详细啊,您把我当白痴就行了,在您的每行代码后面加些注释,再次谢谢大家

2007-04-03 17:54
wode2008
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2007-4-3
收藏
得分:0 
你不应该有id,我觉得你应该先连接一个变量.
在给编辑框连一个变量,
用updatedata()得到值后,也就是combox的索引
在用setcursel()就能显示了

2007-04-03 21:33
快速回复:求助啊,大家帮帮忙
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024963 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved