Здравствуйте возникла не преодолимая ошибка c динамическими созданными компонентами TabSheet+TSynEdit (PageControl.ActivePage.Free)
Если удалить последнею вкладку все работает отлично, а если удалить любую другую предыдущие вкладки по index в основном 2 теряют sender внутри TabSheet то есть больше нельзя скопировать вставить текст обратиться к SynEdit по имени и т.п.
Hello was no insurmountable error c dynamic created components TabSheet+TSynEdit (PageControl.ActivePage.Free)
If you remove the last tab, everything works fine, but if remove any other previous tab index is basically 2 lose a sender inside a TabSheet that is no longer possible to copy paste the text to refer to SynEdit by name, etc.
Еще раз:
Есть 10 вкладок с редактором, удаляем вкладку 7, остается 9 вкладок, вкладка 1,2,3,4,5,6 остаются рабочими, вкладки 7,8,9 вызывают ошибку!
Again:
There are 10 tabs with the editor, remove the tab 7, is 9 tabs, tab 1,2,3,4,5,6 remain working, tabs 7,8,9 fail!
Так создаю:
So creating:
var
Tab: TTabSheet;
rSynEdit: TSynEdit;
....................................................................
Tab := TTabSheet.Create(self);
Tab.PageControl := PageControl1;
Tab.Caption := TabCaption;
Tab.PageControl.ActivePage := Tab;
rSynEdit := TSynEdit.Create(Tab);
rSynEdit.Parent := Tab;
rSynEdit.Align := alClient;
rSynEdit.Name := 'syed' + IntToStr(PageControl1.PageCount);
Так удаляю:
So remove:
procedure TForm1.MenuItem16Click(Sender: TObject);
begin
PageControl1.ActivePage.Free;
end;
VIDEO :
https://youtu.be/N8PC2XOx5dcПрикрепил картинку тут я удалил ActivePage и после в активной вкладке попытался скопировать текст в буфер обмена и получил ошибку.
Attached the picture here I have removed ActivePage and after the active tab has tried to copy the text to clipboard and got an error.