是否有任何功能可以更新 Centura/SQLWindows32 中的标签文本?
2 回答
如果您在输入对象(即数据字段)前面有标签,还有另一种解决方案。使用SalSetWindowLabelText()
函数更改标签的文本。
示例:Call SalSetWindowLabelText(dfInput,'YourText')
。
如果你有一个“独立”标签,那么除了 GuptaSteve 描述的那些之外,你别无他法。
如果您运行的是 v6 或更高版本,您可以将背景文本视为标准对象,因此直接使用其名称设置文本:调用 SalSetWindowText( bkgdTextName , 'Test' )
如果在 v6 之前,
On SAM_AppStartUp
• Set bStaticsAsWindows = TRUE
则找到它的句柄:
• 设置 hWndBkgdMyLabel = VisWinGetHandle( hWnd, 'bkgdTextName', TYPE_BkgdText )
然后使用其句柄设置文本:
• 调用 SalSetWindowText(hWndBkgdMyLabel, '这是我真正需要的标签')
有时需要强制重新绘制标签
• 调用 SalUpdateWindow( hWndBkgdMyLabel )
或者
您可以通过将 Label 直接放在大纲中的任何关联对象(例如 DataField )之前来处理,然后:
• 设置hWndBkgdMyLabel = SalGetWindowLabel(hWndItem)。
它检索附加到按钮或数据字段的标签的句柄,因此您可以使用:
• 调用 SalSetWindowText(hWndBkgdMyLabel, '这是我真正需要的标签')
注意:如果您是 v6 之前的版本,bStaticsAsWindows 必须为 TRUE 才能使最后两个工作