我正在使用PowerBuilder 10.5,我的窗口中有两个单行编辑(SLE)字段 - sle_date1
和sle_date2
。
打开程序后,我需要填写这两个字段。 sle_date2
必须具有今天的值(例如 - 09.07.13),sle_date1
必须具有(sle_date2
- 30天)的值(例如09.06.13)。
所以,正如我所说,一旦我打开我的程序,这两个字段将立即填入今天的日期值和一个月前的日期值。
我怎么能这样做?有什么建议只是为了让我去?
答案 0 :(得分:1)
open()
事件中的修改today()
,您可以使用RelativeDate()
以下代码只回答了您的问题(虽然最好使用一些editmask
控件而不是singlelineedit
,因为它可以简化用户输入的处理方式):
date ld_now, ld_previousmonth
string ls_datefmt
ls_datefmt = "dd.mm.yy"
ld_now = today()
sle_1.text = string(ld_now, ls_datefmt)
ld_previousmonth= RelativeDate(ld_now, -30)
sle_2.text = string(ld_previousmonth, ls_datefmt)
此时显示09.07.13
和09.06.13
。
答案 1 :(得分:1)
首先你需要打开你的窗口。您可以将此代码放入应用程序打开事件中(假设您的窗口是w_main):
open(w_main)
之后将此代码放入窗口的开放事件中:
sle_date1.text = string(today())
sle_date2.text = string(RelativeDate(Today(), -30))
我认为这可以解决您的问题。这是RelativeDate的一点帮助:
最诚挚的问候 的Gabor