萍聚社区-德国热线-德国实用信息网

 找回密码
 注册

微信登录

微信扫一扫,快速登录

萍聚头条

查看: 1675|回复: 9

有jms会VC(MFC界面编程)吗?帮帮我吧!

[复制链接]
发表于 2009-3-30 20:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册 微信登录

x
我今天才刚接触 Visual C++的MFC界面编程。教授给了一篇题,等着交呢。
我刚刚也下了几本这方面的书,可是远水解不了近渴。请各位哥哥姐姐们,帮帮忙!
题目是这样的:
在Eingabefeld里任意给出字母或是数字。建立一个Button叫做Berechnen。在Ausgabefeld里,如果是字母,就显示它的原形。如果是数字,要是它的倍数。
z.B. Eingabefeld:aGh
       Ausgabefeld: aGh

      Eingabefeld: 3
      Ausgabefeld:9

请帮我写一下,语句应该是什么。用C++写出来也行,我再慢慢揣摩!    
谢谢了!
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2009-3-30 20:40 | 显示全部楼层
本帖最后由 楼主 于 2009-3-30 21:42 编辑

唉, 可惜帮不了你了. 我也不会.
ps: 现在很少人用这个了吧...

给点小提示吧, 我也不懂吓猜的, 区分字母或者数字估计是转换成ascii码之后比较的. 其实判断一下是否是数字就可以了, 其他的都直接输出. 还有啊, 如果数字字母混排怎么算? 比如 abc123或者123abc
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
 楼主| 发表于 2009-3-30 21:05 | 显示全部楼层
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2009-3-30 21:19 | 显示全部楼层
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2009-3-30 21:35 | 显示全部楼层
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
 楼主| 发表于 2009-3-31 08:48 | 显示全部楼层
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
 楼主| 发表于 2009-3-31 08:56 | 显示全部楼层
Erstellen Sie eine Dialoganwendung mit einem Ein- und einem Ausgabefeld.
In das Eingabefeld kann der Benutzer Zeichenketten oder Zahlen eingeben. Hat der Benutzer eine Zahl eingegeben, erscheint im Ausgabefeld das Doppelte der eingegebenen Zahl. Hat er einen allgemeinen String eingegeben, so erscheint im Ausgabefeld der String gespiegelt.
Die Berechnung wird durch einen „Berechne“-Button ausgelöst. Zusätzlich soll noch ein Button zum Löschen der Feldinhalte realisiert werden.


我把原题贴出来了,怕自己看错了题!大家帮着看看
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2009-3-31 09:32 | 显示全部楼层
这个是蛮典型的界面编程题目呢,不过数字的话,不是输出双倍吗?然后那个löschen的button,同样是添加一个点击触发的 event,触发以后执行 set textfeld 的内容为 NULL(不知道C++是不是这样,然后Java还需要把界面显示的内容初始化一下才可以,不知道C++是不是也是一样的)
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
发表于 2009-4-1 05:11 | 显示全部楼层
C++中可以用isDigit()或者isAlpha()直接判断,

否则的话转为ascii码,根据范围判断。

或者使用try catch, 我比较倾向于后一种方法:
摘了段c#代码,原帖:
http://bbs.zdnet.com.cn/thread-633330-1-1.html

string inputVal = "12f354";//输入的值
try
{
int.Parse(inputVal);
Console.Write("您输入的是数子");
}
catch (Exception)
{
Console.Write("您输入的不是数子");
}
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
 楼主| 发表于 2009-4-8 22:44 | 显示全部楼层
非常感谢你的提示,我就用得你的方法刚刚做出来了!把答案贴出来给大家看看
private void button2_Click(object sender, EventArgs e)
        {
            textBox1.Text = "";
            textBox2.Text = "";
        }

        private void button1_Click(object sender, EventArgs e)
        {

            try
            {
                int tmp;
                int.Parse(textBox1.Text);
                tmp =Convert.ToInt32(textBox1.Text);
                tmp = tmp * tmp;
                textBox2.Text =Convert.ToString(tmp);

            }
            catch
            { textBox2.Text = textBox1.Text; }
        }
   





C++中可以用isDigit()或者isAlpha()直接判断,

否则的话转为ascii码,根据范围判断。

或者使用try catch, 我比较倾向于后一种方法:
摘了段c#代码,原帖:
http://bbs.zdnet.com.cn/thread-633330-1-1.html
...
kudoshinqi 发表于 2009-4-1 06:11
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
您需要登录后才可以回帖 登录 | 注册 微信登录

本版积分规则

手机版|Archiver|AGB|Impressum|Datenschutzerklärung|萍聚社区-德国热线-德国实用信息网

GMT+1, 2025-1-17 23:51 , Processed in 0.295285 second(s), 20 queries , MemCached On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表