声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1371|回复: 7

[GUI界面] 关于gui参数传递之“怪现象”

[复制链接]
发表于 2007-12-13 10:31 | 显示全部楼层 |阅读模式

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

您需要 登录 才可以下载或查看,没有账号?我要加入

x
请高手指点:
我做了两个窗口,一个主,另一个被主调用,并向主窗口中传递参数,第二个窗口有一个text控件(tag属性为:edit1),通过w=get(findobj('tag','edit1'))得到其值,并把他定义成全局变亮(global w),在主窗口中同样存在一个text(tag属性为:edit1)控件用于显示所得到的w值,通过一个按钮控件控制他的 显示;
现象:
在按钮控件中通过语句 set(findobj('tag','edit1'),'string',w),来显示text内容,此时如果传递的参数w=5,显示正常。
但是当对w进行 运算操作时就显示不正常了,比如:set(findobj('tag','edit1'),'string',w*2),则显示为106,比正确值大了10.6倍,不知道这是为什么?

[ 本帖最后由 eight 于 2007-12-13 10:59 编辑 ]
回复
分享到:

使用道具 举报

 楼主| 发表于 2007-12-13 10:34 | 显示全部楼层
还有就是 如果输入的 数大于等于10的话,同样用set(findobj('tag','edit1'),'string',w*2),
程序就显示出错:
Warning: Single line Edit Controls can not have multi-line text.
这又是什么原因??

[ 本帖最后由 eight 于 2007-12-13 10:58 编辑 ]
发表于 2007-12-13 10:59 | 显示全部楼层
原帖由 liuhui1983 于 2007-12-13 10:31 发表
请高手指点:
我做了两个窗口,一个主,另一个被主调用,并向主窗口中传递参数,第二个窗口有一个text控件(tag属性为:edit1),通过w=get(findobj('tag','edit1'))得到其值,并把他定义成全局变亮(global w), ...

看不懂
发表于 2007-12-13 11:00 | 显示全部楼层
原帖由 liuhui1983 于 2007-12-13 10:34 发表
还有就是 如果输入的 数大于等于10的话,同样用set(findobj('tag','edit1'),'string',w*2),
程序就显示出错:
Warning: Single line Edit Controls can not have multi-line text.
这又是什么原因??

edit控件的多行显示问题,请版面搜索一下
 楼主| 发表于 2007-12-13 22:07 | 显示全部楼层
我的问题是从第二个窗口传回来的数如果直接显示在第一个窗口的text控件上的话是正确的 ,
但当对传回来的数进行计算操作时,比如让这个传回来的数乘以2之后再显示在第一个窗口的text控件上时,结果就不正确了,这是什么 原因?
 楼主| 发表于 2007-12-13 22:12 | 显示全部楼层
问题解决了 ,原来我传回来的是字符串,如果在进行运算操作的话是对字符串进行运算操作,而不是对其中的数字进行操作,哈哈

评分

1

查看全部评分

 楼主| 发表于 2007-12-13 22:13 | 显示全部楼层
用str2num进行转换一下就可以了,嘿嘿:loveliness:
发表于 2007-12-13 22:14 | 显示全部楼层
谢谢LZ回来共享:)
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-18 12:17 , Processed in 0.063511 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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