|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Ошибка cannot focus a disabled or invisible window
Создаю программно при щелчке на кнопку форму, так же программно на ней размещаю кнопку и пытаюсь эту форму показать как ShowModal. Выскакивает ошибка cannot focus a disabled or invisible window.
Код:
procedure TForm1.BitBtn1Click(Sender: TObject); var Forma : TForm; BitButton1 : TBitBtn; BitButton2 : TBitBtn; BitButton3 : TBitBtn; A : TDBGrid; B:TDBLookupListBox; begin Forma := TForm.Create(Self); With Forma do begin Parent := Self; Left := 100; Top := 100; Height := 300; // Высота формы Width := 300; // Ширина формы BorderStyle := bsDialog; end; BitButton1 := TBitBtn.Create(Forma); With BitButton1 do begin Parent := Forma; Left := 20; Top := 235; Height := 25; // Высота Width := 75; // Ширина Caption :='Добавить'; Visible := true; end; Forma.ShowModal; end; Последний раз редактировалось Fantomas_RUS, 01.02.2013 в 23:05. |
#2
|
||||
|
||||
Что-то я не пойму эту хитрость:
Код:
procedure TForm1.BitBtn1Click(Sender: TObject); end; ... Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#3
|
||||
|
||||
Скопировал не совсем верно.....
Код:
procedure TForm1.BitBtn1Click(Sender: TObject); var Forma : TForm; BitButton1 : TBitBtn; BitButton2 : TBitBtn; BitButton3 : TBitBtn; A : TDBGrid; B:TDBLookupListBox; begin Forma := TForm.Create(Self); With Forma do begin Parent := Self; Left := 100; Top := 100; Height := 300; // Высота формы Width := 300; // Ширина формы BorderStyle := bsDialog; end; BitButton1 := TBitBtn.Create(Forma); With BitButton1 do begin Parent := Forma; Left := 20; Top := 235; Height := 25; // Высота Width := 75; // Ширина Caption :='Добавить'; Visible := true; end; Forma.ShowModal; end; Последний раз редактировалось Fantomas_RUS, 01.02.2013 в 23:07. |
#4
|
||||
|
||||
.............
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#5
|
||||
|
||||
Цитата:
|
#6
|
||||
|
||||
Изменил немного
Код:
procedure TForm1.Button2Click(Sender: TObject); var MyForm : TForm; BitButton1 : TButton; begin MyForm := TForm.Create(Self); with MyForm do begin Left := 100; Top := 100; Height := 300; // Высота формы Width := 300; // Ширина формы BorderStyle := bsDialog; BitButton1 := TButton.Create(MyForm); with BitButton1 do begin Parent := MyForm; Left := 20; Top := 235; Height := 25; // Высота Width := 75; // Ширина Caption :='Добавить'; Visible := True; end; end; MyForm.ShowModal; MyForm.Free; end; Твоё обновление не сразу прошло, вот и не видел. Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#7
|
||||
|
||||
Странно, сперва попытался согласно твоему примеру подкорректировать свой, ошибка осталось. Потом полностью вставил твой пример, ошибка исчезла. Так на самом деле в чём косяк то был?
|
#8
|
||||
|
||||
Пытался Parent использовать и забыл кнопку занести внутрь создания.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#9
|
||||
|
||||
Цитата:
|
#10
|
||||
|
||||
Цитата:
|
#11
|
||||
|
||||
С чего это? Ты ведь её не на родительской форме создаёшь, а делаешь самостоятельным окном.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
Этот пользователь сказал Спасибо angvelem за это полезное сообщение: | ||
Fantomas_RUS (02.02.2013)
|
#12
|
||||
|
||||
Ошибка была в том, что я пытался новой созданной форме свойству Parent передать главную форму. Спасибо за разъяснение.
|