TMemo в стиле Firemonkey не фокусируется - PullRequest
0 голосов
/ 10 ноября 2019

Я бросил TMemo и обычный TStyleBook в Форме. Я отредактировал пользовательский стиль для TMemo, добавив TRectangle к background, чтобы TMemo теперь имел другой цвет фона, и изменил свойство TMemo.StyleLookup на фактическое StyleName, но во время выполнения TMemo не может получить фокус.

unit Form1;

interface

type
  TForm1 = class(TForm1)
    Memo1: TMemo;
    StyleBook1: TStyleBook;
  end;

var
  Form1: TForm;

implementation

{$R *.fmx}

end.

StyleBook_StyledMemo

Чего мне не хватает?

1 Ответ

0 голосов
/ 12 ноября 2019

Оказывается, что для установки свойств, применяемых к фону tMemo, исходный элемент background должен быть заменен на tRectangle, а StyleName назначен background. Все элементы, находящиеся внутри оригинала background, должны быть переведены на новый tRectangle background, а оригинал должен быть удален. Свойство Align tRectangle background должно быть установлено на Contents, а свойство Align элемента contents должно быть установлено на Client. После этого для любого свойства нового tRectangle background можно установить желаемое значение, и оно будет правильно отображаться во время разработки и выполнения. Наконец, да, tMemo можно сфокусировать!

StyleContainer
...
Memo1Style1
   ...
   background
   ...
...

background выше, должно быть tRectangle

...