Перейти к содержанию
Fire Monkey от А до Я
  • 0

[TButton] Отсутствует метод Click у кнопки


POV

Вопрос

Опубликовано

... а почему?

 

Теперь, например, для вызова обработчика через Synchronize надо создавать дополнительную процедуру вида

procedure TForm1.bSyncronize;
begin
  Button1.OnClick(Nil);
end;
которая далее вызывается как
TThread.Synchronize(Nil, bSyncronize);
 
И это вместо логичного
TThread.Synchronize(Nil, Button1.Click);
 

Рекомендуемые сообщения

  • 0
Опубликовано

нет Button.Click и слава богу. Наконец-то...

потому что так не должно быть совсем

нужно вызывать не обработчик кнопки а ту процедуру. которая должна вызываться в обработчике кнопки

  • 0
Опубликовано

нет Button.Click и слава богу. Наконец-то...

потому что так не должно быть совсем

нужно вызывать не обработчик кнопки а ту процедуру. которая должна вызываться в обработчике кнопки

С чего бы это? Какие высокие материи заставляют отвязывать реализацию от интерфейса? Задача задаче рознь.

  • 0
  • Модераторы
Опубликовано

дело в том что при вызове

Button1OnClick(nil);

вы выполняете свой код, а при вызове VCL'ного варианта

Button1.Click;

Вы выполняете как минимум то, что написано в методе Click класса TCustomButton

вызываете не нужную отрисовку компонента и собственно свой код.

 

думаю разница очевидна

  • 0
Опубликовано (изменено)

 

вызываете не нужную отрисовку компонента и собственно свой код.

 

думаю разница очевидна

 

Ничего подобного. Отрисовка не вызывается. Верно на 146%.

Изменено пользователем POV
  • 0
Опубликовано

Так не пробовали

TThread.Synchronize(nil, procedure

begin

   Button1.OnClick(Nil);

END)

 

А так ничё, ничё.. Я так делал, но благополучно забыл - преимущественно на билдере приходится работать.

  • 0
  • Модераторы
Опубликовано

 

 

вызываете не нужную отрисовку компонента и собственно свой код.

 

думаю разница очевидна

 

Ничего подобного. Отрисовка не вызывается. Верно на 146%.

 

сейчас посмотрел, действительно не вызывается отрисовка.

но лишние действия все равно выполняются

  • 0
Опубликовано

С чего бы это? Какие высокие материи заставляют отвязывать реализацию от интерфейса?

Те же материи, что не дают называть кнопку Button1, заставляют делать отступы в коде и делить пять экранов кода на процедуры

  • 0
Опубликовано

Это уже религия. Тут спорить не о чем. Для меня критерием правильности мнения служит деньга которую исправно платят за работу.

Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...