Есть ли функция для обновления текста метки в Centura/SQLWindows32?
Обновите текст этикетки с помощью Centura/SQLWindows32.
Ответы (2)
Если вы используете v6 или более позднюю версию, вы можете обрабатывать фоновый текст, как если бы это был стандартный объект, поэтому задайте текст напрямую, используя его имя: Call SalSetWindowText(bkgdTextName, 'Test')
Если до v6 , On SAM_AppStartUp
• Set bStaticsAsWindows = TRUE
найдите его дескриптор:
• Установить hWndBkgdMyLabel = VisWinGetHandle( hWnd, 'bkgdTextName', TYPE_BkgdText)
затем установите текст, используя его дескриптор:
• Вызовите SalSetWindowText( hWndBkgdMyLabel, 'Эта метка мне действительно нужна' )
Иногда необходимо принудительно перекрасить этикетку
• Вызов SalUpdateWindow(hWndBkgdMyLabel)
OR
Вы можете использовать дескриптор, поместив метку непосредственно перед любым связанным объектом (например, DataField) в схеме, а затем:
• Установите hWndBkgdMyLabel = SalGetWindowLabel(hWndItem).
Он извлекает дескриптор метки, прикрепленной к кнопке или полю данных, поэтому вы можете использовать:
• Вызовите SalSetWindowText( hWndBkgdMyLabel, 'Эта метка мне действительно нужна' )
Примечание: bStaticsAsWindows должен иметь значение TRUE, чтобы последние два работали, если у вас более ранняя версия v6.
Есть еще одно решение, если у вас есть метка перед входным объектом (например, полем данных). Используйте функцию SalSetWindowLabelText()
для изменения текста метки.
Пример: Call SalSetWindowLabelText(dfInput,'YourText')
.
Если у вас "автономный" ярлык, то у вас нет другого выхода, кроме тех, которые описал ГуптаСтив.