nimarufa Posted January 23, 2020 Share Posted January 23, 2020 Непонятно как в JS обращаться ко фрейму (TUniFrame). У него нет JSName и описанный в документации метод обращения через MainForm.MyFrame1… для него тоже не работает. Пример прилагаю. На форму положил панель и фрейм. В конструкторе формы для обоих добавляю обработчик на click. Для панели код работает, для фрейма нет. Обращение в обоих случая однотипное. Для фрейма есть ещё закомментированный код, он работает, но интересует именно не закомментированный код, очень нужно чтобы он заработал. procedure TMainForm.UniFormCreate(Sender: TObject); begin UniPanel1.ClientEvents.ExtEvents.Add( 'click=function function click(sender, eOpts) ' + '{ ' + ' MainForm.UniPanel1.setPosition(MainForm.UniPanel1.x,MainForm.UniPanel1.y+50); ' + // works for panel '}' ); MyFrame1.ClientEvents.ExtEvents.Add( 'click=function function click(sender, eOpts) ' + '{ ' + ' MainForm.MyFrame1.setPosition(MainForm.MyFrame1.x,MainForm.MyFrame1.y+50); ' + // not works for frame // ' sender.setPosition(sender.x,sender.y+50); ' + // works for frame '}' ); end; FrameTest.zip Link to comment Share on other sites More sharing options...
Sherzod Posted January 23, 2020 Share Posted January 23, 2020 7 minutes ago, nimarufa said: Для фрейма есть ещё закомментированный код, он работает, но интересует именно не закомментированный код, очень нужно чтобы он заработал. MainForm.MyFrame1, используйте без MainForm: MyFrame1.setPosition... Link to comment Share on other sites More sharing options...
nimarufa Posted January 23, 2020 Author Share Posted January 23, 2020 MyFrame1. ... Не работает. Вроде получилось через MyFrame1.FramePanel. ... Спасибо! Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now