给客户做了一个管理系统,请教一下,我们公司这种设计算是规范吗?[与客户在这点上有点争议]
给客户做了一个管理系统,请教一下,我们公司这种设计算是规范吗?[与客户在这点上有点争议]
-----------
客户的要求比较细,问题出在一个小问题上.就是文本框的验证问题.
对于只能输入数字的文本框,我们公司是这样设计的:可以输入任何字符,但是在进行保存时进行验证,用isnumeric()函数检测,所有不合法的输入都会屏蔽的,可是客户说这样不规范,应该不合法的数字根本就不应该输入进去.可是我们公司认为这不算问题.因为最终也不会导致错误.而且象查询分析器这种软件也是输入完之后才提示的.在这点上达不成一致.
所以发个贴子,想听听大家的意见.我们公司也是刚开始做,没有经验.象这种情况客户提的有道理吗?规范的软件应该如何做呀.
问题点数:50、回复次数:28Top
1 楼fishboyok(fish)回复于 2006-06-02 12:49:26 得分 3
应该一边输入一边验证吧.这种验证数字的又不是复杂的验证.Top
2 楼bobdog1215(林夕)回复于 2006-06-02 12:53:18 得分 3
这个做起来很简单的
我觉得如果技术实现上没问题
而且客户的要求合理的话
就按客户的意思做Top
3 楼grplxj()回复于 2006-06-02 12:54:59 得分 0
应该一边输入一边验证吧.这种验证数字的又不是复杂的验证.
---------------
是的,我知道可以放在keypress事件中进行验证,便是整个程序的所有文本框都要改呀.太麻烦了.
我想问我们公司的方法是不是算做不符合软件设计规范.Top
4 楼bobdog1215(林夕)回复于 2006-06-02 12:58:34 得分 3
可以做个函数放在模块里
需要用的时候调用就可以了
至于啥设计规范不懂
但是人家客户的要求显然是合情合理
要从客户的角度出发考虑问题
毕竟最后使用软件的是他们
Are U Clear~Top
5 楼monica888(※当任何人看到奥特曼家族的回贴时表示该楼主已受到奥特曼共和国零分贴计划的特别保护,任何版主如果擅自删)回复于 2006-06-02 13:33:00 得分 3
上海对日软件培训高薪热招! 精彩从腾讯人才频道延伸
征集移动方案,共享客户资源 尚观ULP课程,签4000月薪就业协议 全球舞台,无限空间,国际化新联想诚邀您加盟!
SafeNet硬盘加密,即刻下载体验!
很简单的
写个外挂就完事了
findwindows
findwindowsEX
IF GetwindowText(TextBox句柄)=数字 Then PostMessage(TextBox句柄,...,...,...byval "")
这种问题,将你们公司的软件的窗体标题发给一个真正搞VB的人,两小时后你可以在你的邮箱中得到解决方案了,不用回去找源码慢慢改然后再编绎(另出现这些问题也是编程时不规范的后果,怨不得谁)
Top
6 楼songyaowu(不以分多而蹭之;不因分少而不答; www.vb99.com)回复于 2006-06-02 13:51:34 得分 10
个人认为这个问题从技术上讲应该不算是不规范吧,很多软件在类似的问题上都是后期验证的,但这种后期验证后的处理方式就各异了,个人认为只要发现错误后能让用户明确知道哪里错了,再将这个文本框设置焦点,便于用户输入就可以了。
但这里有个问题,如果你的客户不喜欢这种方式那就是你公司如何向客户提供高质量服务的问题了,由于客户的要求也算合理,所以满足客户的要求是很重要的,因此建议你们还是改了吧,除非你们的公关可以说服客户接收这种方式。毕竟客户的需要才是产品的市场。
举个例子讲,如果你们不是给固定客户,而另有一软件与你们相同,只是这个验证方式不同的话,那么客户就会放弃你们的产品,这时你就不会认为修改这个有多麻烦了。因此,客户的需要才是关键。Top
7 楼grplxj()回复于 2006-06-02 15:35:37 得分 0
关键是每个文本框都加上这样有验证确实是太麻烦了.大家给点意见.在比较快的办法吗?谢谢Top
8 楼zyg0(影子(被评为本年度最可爱流氓)回复于 2006-06-02 15:42:07 得分 2
正常的要求是2个都要做的Top
9 楼frankwong(黄梓钿)回复于 2006-06-02 16:32:08 得分 2
如果工程中这种需要验证的文本框多的话,就重新做一个有这个功能的activeX控件吧Top
10 楼grplxj()回复于 2006-06-02 17:41:10 得分 0
听了大家的意见,现在决定改了,大家给意见吧.如何改好.Top
11 楼lsftest()回复于 2006-06-02 18:09:06 得分 2
用setwindowlong把文本框都加上ES_NUMBERTop
12 楼grplxj()回复于 2006-06-02 18:18:04 得分 0
用setwindowlong把文本框都加上ES_NUMBER
-------------
什么意思,没明白。Top
13 楼fishboyok(fish)回复于 2006-06-02 19:36:18 得分 2
如果用的text框比较多,就重新写一个带输入验证的text控件,呵呵.然后全部替换了.这样代码就不用改写多少.Top
14 楼province_(雍昊)回复于 2006-06-02 20:17:11 得分 6
同意楼上一位兄弟的意见,输入和保存时均要验证,只在输入时验证会出漏洞的,另一位兄弟已经作出提示,我也不重复了。客户意见也有道理,毕竟在保存时返回错误虽说也很明了,但这种交互效率低,用户是不喜欢的。Top
15 楼fj182(阿花)回复于 2006-06-03 01:23:53 得分 3
做成用户控件来增强文本框的功能。Top
16 楼abiho(迷路的打工者(只有不会做的程序员,没有不讲道理的客户))回复于 2006-06-03 10:36:17 得分 0
这么简单的事情还和客户争论Top
17 楼bulletCoderHope(九下九下做世界)回复于 2006-06-03 11:11:18 得分 2
觉得两个都可以,就按照用户要求吧
Top
18 楼bulletCoderHope(九下九下做世界)回复于 2006-06-03 11:12:59 得分 0
我晕,你做成函数随时调用就可以了Top
19 楼imdg(imdg)回复于 2006-06-03 11:37:25 得分 0
这个要求又不过分,客户第一啊!这点还争什么Top
20 楼grplxj()回复于 2006-06-03 12:01:43 得分 0
我晕,你做成函数随时调用就可以了
------------------
谢谢,能给个函数代码吗?Top
21 楼jackcaixia(风)回复于 2006-06-03 12:07:22 得分 4
我也是做软件开发的~~你的客户的要求很合理~~毕竟客户要求要放在第一位~~而且类似情况(比如说有些地方必需只能输入数字的)基本上都要在输入的时候判断输入的内容是否符合要求~~~
其实也不难~~做法也有很多~~比如
Private Sub Text1_Change()
If Not IsNumeric(Trim$(Text1.Text)) Then
Text1.Text = ""
Exit Sub
End If
End Sub
代码并不长也不麻烦~~Top
22 楼No001(Zidane5)(Beckham7)回复于 2006-06-03 12:22:01 得分 1
客户是上帝啊Top
23 楼grplxj()回复于 2006-06-03 13:04:04 得分 0
Private Sub Text1_Change()
If Not IsNumeric(Trim$(Text1.Text)) Then
Text1.Text = ""
Exit Sub
End If
End Sub
----------------
谢谢,不过这么简单不行的。用户输入一个错字,整个全没有了。并不好用呀。Top
24 楼KissRose(远离荧光屏)回复于 2006-06-03 14:01:08 得分 2
Private Sub Text1_KeyPress(KeyAscii As Integer)
If (Not (KeyAscii > 45 And KeyAscii < 58)) And KeyAscii <> 8 And KeyAscii <> 47 Then KeyAscii = 0
End Sub
这样就可以了,如果懒得去一个一个的改,那么自己可以编写一个增强型的TextBox控件。我觉得楼主的问题很正常,要改就去一个一个的改。
Top
25 楼ilove8(千里|你去哪里了,我等了你很久了!)回复于 2006-06-03 14:04:28 得分 0
dingTop
26 楼wenhongL(三脚猫)回复于 2006-06-03 14:06:47 得分 2
自己做一个数字控件Top
27 楼sequh(夏克)回复于 2006-06-03 14:10:37 得分 0
你的公司有几个人?项目好找吗?Top
28 楼grplxj()回复于 2006-06-03 14:54:46 得分 0
你的公司有几个人?项目好找吗?
------
哈哈,不好找,所以客户要求什么就要满足什么。我们是负责的。Top




