Lazarus - Как контролировать цвет текстового поля, которое отключено (т. Е. Enabled:= false)
Когда данные только для просмотра, я отключаю текстовые поля в форме.
Но в течение этого времени текст не очень читабелен, так как он очень легкий.
Есть ли способ изменить цвет этих текстовых полей вместо использования цветов по умолчанию для ОТКЛЮЧЕННЫХ объектов?
Впоследствии, я предполагаю, что это будет применяться ко всем объектам - спискам, выпадающим спискам, вводу даты и т. Д., Но пока это только для текстовых полей.
Спасибо!
1 ответ
Исходя из моего собственного вопроса, целью отключения текстовых полей было оставить их заблокированными, чтобы предотвратить изменения пользователя. Тем не менее, отключенные текстовые поля не были доступны для чтения.
Решение НЕ в том, чтобы изменить цвет объектов dsabled, а оставить его заблокированным. И самый простой способ сделать это - просто изменить ReadOnly
собственность на true
, Таким образом, когда есть необходимость заблокировать текстовое поле, я могу установить свойство, как в этом примере.
MyTextBox.ReadOnly := True;
Теперь элемент управления остается белым или любого другого цвета, и в то же время он недоступен для редактирования пользователем.
Странно, как это было просто, и я не понял этого раньше:)