在PowerBuilder文本框上设置值

时间:2012-07-17 17:07:45

标签: textbox powerbuilder

我正在使用PowerBuilder 12.5 Classic开发计费系统,我需要为文本框设置0;比如在vb.net中txtchange.Text = 0
我有两个下拉列表框

  1. ddlb_price(定义项目的价格值)
  2. ddlb_cash(客户提供的现金金额)
  3. sle_change(收银员给客户的变化)
  4. 当收银员输入现金时,系统应设置sle_change的值  1.这给了我语法错误;

    if cash=price then
        sle_fare.settext=0
       end if
    


    2。这给了'不相容的类型

        if cash=price then
          sle_fare.text=0
        end if
    

2 个答案:

答案 0 :(得分:4)

单行编辑(sle)控件用于保存文本。您正在尝试为其分配数值。如果你想让sle显示它,你必须将数字改成一个字符串:

sle_fare.text = "0" 

sle_fare.text = string(variableHere) 

答案 1 :(得分:1)

Once again,我要退后一步,忽略实际问题,看看DataWindow如何作为替代方案提供帮助。

您似乎想要一个带有数据类型的控件。 DataWindow具有这些类型的控件。不要忘记DataWindow不必在其后面有一个SELECT语句;它可以有数据集后面的存储过程,Web服务或任何内容(外部DataWindow)。一旦你有一个带有数字数据类型的控件,就可以(免费)得到一些基本的编辑控件,比如不允许字段中的字母字符,并确保输入的值实际上是一个数字(例如" 0 -.2.1"会失败)。

除此之外的一步是查看即将到来的要求之一:计算变化。在DataWindow上,您可以创建一个带有表达式的计算,一旦输入价格和现金,该表达式将自动为您计算更改。

我当然不想说你不能以你正在进行的方式做事,但DataWindow会解决很多其他问题做法。 PowerBuilder的优势在于DataWindow。

祝你好运,

特里