Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.01.2011, 13:06   #11
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

Вопрос №1:
FormAVvodD - является автоматически создаваемой формой?

Вопрос №2:
Зачем в цикле стоит
Код:
FormAVvodD.Show;
Получается вы хотите показать форму и выполнить FormAVvodD.Button1Click, в котором она закрывается? Короче, хотите чтоб она моргала?

Вопрос №3:
Как в FormAVvodD.Edit3.Text оказывается нужное вам значение? Наверное есть обработчики событий OnChange для Edit1 и Edit2?

Замечание
Цитата:
Код:
procedure TFormAVvodD.Button1Click(Sender: TObject);
begin
A2[inn,jmm] := StrToFloat(Edit3.Text) ;
FormAVvodD.Close;
end;
inn,jmm - это ж локальные переменные TGlavnForm.Menu21Click, а вы их используете в TFormAVvodD.Button1Click.
Может так:
Код:
procedure TFormAVvodD.Button1Click(Sender: TObject);
begin
A2[StrToInt(Edit1.Text),StrToInt(Edit2.Text)] := StrToFloat(Edit3.Text) ;
FormAVvodD.Close;
end;
P.S.:
Вообще, не проще ли сделать без использования формы
Код:
for jmm := 1 to Ma do
  for inn := 1 to Na do
    A2[inn,jmm] := MyFunc (inn, jmm);

Последний раз редактировалось Sibedir; 31.01.2011 в 13:12.
Sibedir вне форума Ответить с цитированием
Старый 03.02.2011, 13:03   #12
Nikmichsch
 
Аватар для Nikmichsch
 
Регистрация: 28.01.2011
Сообщений: 9
По умолчанию

Виталий! Спасибо за разъяснения. Я сделал, как Вы советовали, и почти всё получилось. Кроме того, что: вторая форма, в которой я хочу производить разные действия, открывается как бы не полностью. Вместо кнопок на ней - пустые места. И полностью она открывается только при выходе из цикла. Видимо, я чего-то не понимаю. Компиляция проходит нормально, ошибки не выдаются.
С уважением и благодарностью.
Nikmichsch
Nikmichsch вне форума Ответить с цитированием
Старый 03.02.2011, 13:05   #13
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

Попробуйте после Show поставить
Код:
  Application.ProcessMessages;
Sibedir вне форума Ответить с цитированием
Старый 04.02.2011, 13:59   #14
Nikmichsch
 
Аватар для Nikmichsch
 
Регистрация: 28.01.2011
Сообщений: 9
По умолчанию

Поставил. Окно открывается отлично, но оно оказывается в неактивном состоянии, и я в нём работать не могу. Как его активизировать в процессе работы программы ?
С уважением и благодарностью.
Nikmichsch.
Nikmichsch вне форума Ответить с цитированием
Старый 04.02.2011, 14:08   #15
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

ProcessMessages() надо вызывать периодически внутри цикла, чтобы дать возможность окнам обработать полученные сообщения.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 04.02.2011, 15:12   #16
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

Цитата:
и я в нём работать не могу. Как его активизировать в процессе работы программы ?
Чаво, чаво?!!
Вы же сами его в цикле, то открываете, то закрываете. Как вы с ним работать собрались?

Уважаемый Nikmichsch, еще раз перечитайте мой пост #11 и ответте наконец: Зачем вам нужно в цикле открывать форму, загонять значения в эдиты, читать значение из эдита и закрывать форму? Что вы пытаетесь сделать? У вас что, форма вместо функции что-ли?
Sibedir вне форума Ответить с цитированием
Старый 06.02.2011, 09:11   #17
Nikmichsch
 
Аватар для Nikmichsch
 
Регистрация: 28.01.2011
Сообщений: 9
По умолчанию

Уважаемые коллеги ! Существуют ли процедуры или функции, позволяющие мне в процессе выполнения программы останавливать её в нужном мне месте ?
С благодарностью.
Nikmichsch.
Nikmichsch вне форума Ответить с цитированием
Старый 06.02.2011, 11:52   #18
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,242
По умолчанию

Что значит "останавливать"?
Например процедура sleep позволяет остановить программу на указанное кол-во миллисекунд. Но что вам это даст?

Nikmichsch, читаем здесь и задаем вопрос еще раз.
Sibedir вне форума Ответить с цитированием
Старый 06.02.2011, 11:58   #19
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Nikmichsch
Да. Останавливать для чего?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 06.02.2011, 13:08   #20
Nikmichsch
 
Аватар для Nikmichsch
 
Регистрация: 28.01.2011
Сообщений: 9
По умолчанию

За ответы - спасибо.
Мне хотелось бы сделать так: чтобы программа в цикле останавливалась, например, после открытия формы (окна), чтобы я мог в этом окне выполнять нужные мне действия - нажимать кнопки, вводить данные с помощью однострочного редактора, контролировать и корректировать данные и пр. И потом (по моей команде) чтобы окно закрывалось и программа продолжала работать, выполняя следующий цикл.
Так, как меня научил Виталий ( Stilet. #2,#6 ), я сделал. Всё было бы отлично, если бы я мог, как в режиме отладки (с помощью токи прерывания) останавливать программу. Может быть, я многого хочу ?
С благодарностью за долготерпение.
Nikmichsch

Последний раз редактировалось Nikmichsch; 06.02.2011 в 13:21.
Nikmichsch вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как организовать цикл KAMKAM Microsoft Office Excel 29 05.07.2010 22:20
Как организовать цикл в Экселе ? vedro-compota Microsoft Office Excel 8 01.07.2010 22:42
Как организовать цикл по столбцам? TheLadyLida Microsoft Office Excel 3 12.04.2010 16:41
как организовать цикл? Aqil_f Microsoft Office Excel 3 03.06.2009 10:13