Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 09.07.2012, 10:16
Аватар для R-18Rus
R-18Rus R-18Rus вне форума
Новичок
 
Регистрация: 08.04.2012
Сообщения: 68
Версия Delphi: Delphi 7
Репутация: 127
По умолчанию Как отследить событие OnClick?

Вообщем по этому событию у меня начинается цикл. Есть (отдельно) функция (написанная мною). В ней две строковых переменные. В них заносятся результаты вычислений из цикла события OnClick.
Если нажать на кнопку повторно, то в строках уже будут значения из двух циклов подряд. Если их обнулять в функции, то занесутся только последние значения вычислений в цикле. Спасает обнуление во время наступления события OnClick'а, но тогда строки приходится описывать как глобальные переменные.

Вопрос: можно-ли в моей функции отслеживать события нажатия на кнопку?
Ответить с цитированием
  #2  
Старый 09.07.2012, 10:23
icWasya icWasya вне форума
Местный
 
Регистрация: 09.11.2010
Сообщения: 499
Репутация: 10
По умолчанию

А теперь поподробнее.
Как сейчас в эти
>>В ней две строковых переменные
попадают значения из цикла, написаного в OnClick ?
Ответить с цитированием
  #3  
Старый 09.07.2012, 11:59
Аватар для R-18Rus
R-18Rus R-18Rus вне форума
Новичок
 
Регистрация: 08.04.2012
Сообщения: 68
Версия Delphi: Delphi 7
Репутация: 127
По умолчанию

Цитата:
Сообщение от icWasya
Как сейчас в эти...попадают значения из цикла

Это простая функция с параметром. В параметр заносится результат вычислений из цикла. Строки заполняются из значения параметра.
Ответить с цитированием
  #4  
Старый 09.07.2012, 12:01
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,723
Репутация: 52347
По умолчанию

вы код покажите, а то так долго можно гадать.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #5  
Старый 09.07.2012, 12:17
Аватар для R-18Rus
R-18Rus R-18Rus вне форума
Новичок
 
Регистрация: 08.04.2012
Сообщения: 68
Версия Delphi: Delphi 7
Репутация: 127
По умолчанию

Вот код:
Код:
var
  Form1: TForm1;
  a,b,c,i,rez:byte;
  mas:array [1..8,1..8] of byte;
  s1,s2:string;

implementation

{$R *.dfm}


function OutRez(rez:byte):byte;
var
    x,y:byte;
begin
if i>2
  then s1:=s1+IntToStr(rez)
  else s2:=s2+IntToStr(rez);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
s1:=(''); s2:=('');
Label1.Caption:=('');
for i:=5 downto 0 do
  begin
  rez:=0;
  randomize;
  a:=random(2);
  b:=random(2);
  c:=random(2);
  inc(rez,a);inc(rez,b);inc(rez,c);
  if rez<2 then rez:=0
    else rez:=1;
  Label1.Caption:=Label1.Caption+(' ')+IntToStr(rez);

  OutRez(rez);
  end;

ShowMessage('s1 = '+s1+' s2 = '+s2 );
end;

end.
Ответить с цитированием
  #6  
Старый 09.07.2012, 12:55
Аватар для cotseec
cotseec cotseec вне форума
Активный
 
Регистрация: 16.07.2008
Сообщения: 353
Версия Delphi: D7,TDE06,RAD09
Репутация: 1443
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
Button1.enabled:=false;
{тело процедуры}
Button1.enabled:=true;
end;
__________________
Понять, что хочет заказчик - бесценно, ведь он платит MasterCard
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 09:41.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025