Форум: "Основная";
Текущий архив: 2002.08.08;
Скачать: [xml.tar.bz2];
ВнизПо поводу формы Найти похожие ветки
← →
novice_al (2002-07-25 14:29) [0]Уважаемые мастера! Вопрос в следующим.
Главная форма F1 из неё через меню вызываю другую форму F2. Она вызывается, но с ошибкой
procedure TF1.ssMenu1Click(Sender: TObject);
begin
F2:=TF2.Create(Application);
F2.Visible:=True;
F2.Show;
F1.Hide;
end;
Access violation at address ... in module Mainform.exe
← →
Skier (2002-07-25 14:32) [1]>novice_al
F2.Visible:=True - убери это...для начала.
← →
novice_al (2002-07-25 14:35) [2]Если я убираю Visible, то возникает ошибка невозможности фокусирования в невидимое окно. Это уже пробовалось
← →
TTCustomDelphiMaster (2002-07-25 14:38) [3]novice_al © (25.07.02 14:29)
Ошибка во второй форме.
и не надо писать
F2.Visible:=True;
F2.Show;
достаточно
F2.Show;
← →
Skier (2002-07-25 14:41) [4]>novice_al
У меня вот такой код работает без шума и пыли...
procedure TForm1.miNClick(Sender: TObject);
var
Form2 : TForm2;
begin
Form2 := TForm2.Create(Application);
Form2.Show;
Hide;
end;
Видимо (?) у тебя что-то не так сделано в событиях второй
формы.
← →
TTCustomDelphiMaster (2002-07-25 14:43) [5]
> novice_al © (25.07.02 14:35)
> ошибка невозможности фокусирования в невидимое окно
Это что еще за ошибка? Переведи на английский.
PS: Покажи код progremm, F1 и F2.
← →
novice_al (2002-07-25 14:46) [6]На второй форме только OnCreate инициализация переменных.
А на OnShow установка фокуса в контрол из переменной :TWinControl
← →
Skier (2002-07-25 14:49) [7]>novice_al
Видимо (?) ошибка как раз в OnShow.
Попробуй без него...
← →
Внук (2002-07-25 14:52) [8]>>TTCustomDelphiMaster © (25.07.02 14:43)
Вероятно, Can not focus to disabled or invisible window - ошибка стандартная
← →
TTCustomDelphiMaster (2002-07-25 14:55) [9]
> novice_al © (25.07.02 14:46)
Ну дык покажи, а так только одно можно сказать
Ошибка в 17 строке
Skier
← →
Skier (2002-07-25 14:56) [10]>TTCustomDelphiMaster
Удалённая отладка приложения :)))
← →
novice_al (2002-07-25 15:07) [11]To TTCustomDelphiMaster ошибка которую указал Внук Can not focus to disabled or invisible window
To Skier уже попробовал без OnShow результат такой же
← →
Skier (2002-07-25 15:09) [12]>novice_al
Код событий второй формы в студию !
← →
novice_al (2002-07-25 15:17) [13]//Закрытие доступа к некоторым пунктам меню
NMenuZagolovokTP.Visible:=False; //заголовок ТП
NMenuOperatsii.Visible:=False; //Доступ к меню создания ТП
NMenuPrint.Visible:=False; //Печать
//получение фокуса в первое поле выбора технолога;
CBTehnologName.Text:="";
CBTehnologName.SetFocus;
{Разрешение табуляции на объекты, при открытии формы разрешается табуляция
только на следующий объект после объекта с фокусом, и присвоение первона-
чальных значений полям}
CBYear.Text:="";
CBYear.Enabled:=True;
CBMonth.Enabled:=False;
CBMonth.Text:="";
CBDay.Enabled:=False;
CBDay.Text:="";
Edit1.Enabled:=False; //заказ
Edit1.Text:="";
Edit2.Enabled:=False; //чертёж
Edit2.Text:="";
Edit3.Enabled:=False; //сб.чертёж
Edit3.Text:="";
ComboBox1.Enabled:=False; //деталь
ComboBox1.Text:="";
MEKolichestvo.Enabled:=False;
MEKolichestvo.Text:="1";
CBZagotovka.Enabled:=False;
CBZagotovka.Text:="";
MEDlinaDiametr.Enabled:=False;
MEDlinaDiametr.Text:="0";
MEShirinaVnDiametr.Enabled:=False;
MEShirinaVnDiametr.Text:="0";
MEVisota.Enabled:=False;
MEVisota.Text:="0";
CBMaterial.Enabled:=False;
CBMaterial.Text:="";
EUdPlotnost.Enabled:=False;
EUdPlotnost.Text:="0";
CBUdPlotnost1.Enabled:=False;
CBUdPlotnost1.Text:="0";
CBUdPlotnost2.Enabled:=False;
CBUdPlotnost2.Text:="0";
CBUdPlotnost3.Enabled:=False;
CBUdPlotnost3.Text:="0";
CBUdPlotnost4.Enabled:=False;
CBUdPlotnost4.Text:="0";
EMassa.Enabled:=False;
EMassa.Text:="";
//Определяем временно невидимые объекты
LVveditePlotnost.Visible:=False;
CBUdPlotnost1.Visible:=False;
CBUdPlotnost2.Visible:=False;
CBUdPlotnost3.Visible:=False;
CBUdPlotnost4.Visible:=False;
LUdPlotnostZap.Visible:=False;//запятая
LPlotnost.Visible:=False;
LMassa.Visible:=False;
EMassa.Visible:=False;
LDlinaDiametr.Visible:=False;
LShirinaVnDiametr.Visible:=False;
LVisota.Visible:=False;
{ При создании формы поле День получает текущее значение из даты}
TekData:=DateToStr(Date); //Вытаскиваем текущую дату
TekDay:=Copy(TekData,1,2); //Выбираем день из даты
CBDay.Text:=TekDay;
{ При создании формы поле Месяц получает текущее значение из даты}
TekMonth:=Copy(TekData,4,2);
CBMonth.Text:=TekMonth;
{ При создании формы поле Год получает текущее значение из даты}
TekYear:=Copy(TekData,7,4);
CBYear.Text:=TekYear;
{Выборка справочника из таблицы и перенесение его в комбо бох с вызовом
процедуры выбора ViborVComboBoxIzTabvlitsi для деталей}
Tbl:=Table1; DBCB:=dbComboBox1; CB:=ComboBox1;
ViborVComboBoxIzTabvlitsi;
//Это повтор предыдущего только для таблицы технологов
Tbl:=Table2; DBCB:=dbComboBox2; CB:=cbTehnologName;
ViborVComboBoxIzTabvlitsi;
//Это повтор предыдущего только для таблицы заготовок
Tbl:=Table3; DBCB:=DBCBZagotovka; CB:=CBZagotovka;
ViborVComboBoxIzTabvlitsi;
//Это повтор предыдущего только для таблицы материалов
Tbl:=Table4; DBCB:=DBCBMaterial; CB:=CBMaterial;
ViborVComboBoxIzTabvlitsi;
← →
novice_al (2002-07-25 15:20) [14]Этот код идёт на событие OnCreate
Остальные события уже не обрабатываются,но результат прежний
← →
Внук (2002-07-25 15:24) [15]CBTehnologName.SetFocus; - на OnCreate???
← →
Skier (2002-07-25 15:25) [16]>novice_al
попробуй заремить CBTehnologName.SetFocus (?)
← →
saxon (2002-07-25 15:27) [17]CBTehnologName.SetFocus; - проблемма
← →
TTCustomDelphiMaster (2002-07-25 15:36) [18]novice_al © (25.07.02 15:20)
Поставь точку останова, нажимай F7 и смотри на какой строке выскочит ошибка.
← →
novice_al (2002-07-25 15:38) [19]YES! Это именно CBTehnologName.SetFocus; Спасибо огромное!!!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.08.08;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.005 c