Вверх ↑
Этот топик читают: Гость
Разработчик
Ответов: 26173
Рейтинг: 2128
#31: 2012-09-18 11:14:02 ЛС | профиль | цитата
Tad писал(а):
И какая нужная?

Да Х его З, может сохраняется где в ini. Это ТС спрашивать надо, он точно знает где
карма: 22

0
Ответов: 1173
Рейтинг: 49
#32: 2012-09-18 11:22:51 ЛС | профиль | цитата
OMFG!
Проверка Бипает, если Статус = 1, не бипает, если Статус = 0. Т.е., есть две ветки: с бипом и без.
Статус задаётся после запуска программы, но до старта процесса вводов.
Статус сейчас проверяется после каждого ввода, а нужно, чтобы ветка выбралась до старта процесса вводов, но после запуска программы.
[flood]Кстати, забавная штука будет, если написать так: == Hello ==[/flood]
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#33: 2012-09-18 11:24:54 ЛС | профиль | цитата
Ну для этого есть
Ini
Registry
GVarContainer
и флаг в руки TC.
Ex_, смотрел http://forum.d2h.ru//getfile/29096 ?
Судя по всему - нет.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26173
Рейтинг: 2128
#34: 2012-09-18 11:31:12 ЛС | профиль | цитата
Ex_ писал(а):
Проверка Бипает, если Статус = 1, не бипает, если Статус = 0. Т.е., есть две ветки: с бипом и без

КО
Ex_ писал(а):
Статус сейчас проверяется после каждого ввода, а нужно, чтобы ветка выбралась до старта процесса вводов, но после запуска программы

А если а процессе работы изминить чекбокс, ветка же должна поменяться, или чекбокса не будет, а в твоей схеме он стоял, чтобы нас запутать
карма: 22

0
Ответов: 4633
Рейтинг: 749
#35: 2012-09-18 11:31:12 ЛС | профиль | цитата
Ещё я попытаюсь объяснить, что нужно Ex_. Tad'у должно быть понятнее:
Есть сейчас (код условный):

#pas
procedure Form.OnStart;
begin
  Edit.OnEnter := _OnEnter;
end;

procedure _OnEnter;
begin
  if (Edit.Text = <random_value>)
  begin
    if CheckBox.Checked then Beep; // Эта проверка выполняется многократно. Нужно один раз.
    // ... некоторые действия, если текст равен <random_value>
  end;
  GenerateNextRandomValue;
end;
Нужно:


#pas
procedure Form.OnStart;
begin
  if CheckBox.Checked then // Проверка выполняется один раз
    Edit.OnEnter := _OnEnter1;
  else
    Edit.OnEnter := _OnEnter2;
end;

procedure _OnEnter1;
begin
  if (Edit.Text = <random_value>) then 
  begin
    Beep;
    // ... некоторые действия, если текст равен <random_value>
  end;
  GenerateNextRandomValue;
end;

procedure _OnEnter2;
begin
  if (Edit.Text = <random_value>) then 
  begin
    // ... некоторые действия, если текст равен <random_value>
  end;
  GenerateNextRandomValue;
end;

карма: 26

1
Голосовали:Ex_
Разработчик
Ответов: 26173
Рейтинг: 2128
#36: 2012-09-18 11:33:56 ЛС | профиль | цитата
Netspirit писал(а):
Ещё я попытаюсь объяснить, что нужно Ex_

Мы уже это поняли.
карма: 22

0
Ответов: 1173
Рейтинг: 49
#37: 2012-09-18 11:37:12 ЛС | профиль | цитата
nesco писал(а):
А если а процессе работы изминить чекбокс, ветка же должна поменяться
Нет. Всё абсолютно так, как расписал Netspirit.
карма: 0

0
Разработчик
Ответов: 26173
Рейтинг: 2128
#38: 2012-09-18 11:57:46 ЛС | профиль | цитата
Ex_ писал(а):
Всё абсолютно так, как расписал Netspirit

Это можно реализовать только в кодах компонентов. В схеме нужна постоянная проверка направления
------------ Дoбавленo в 11.57:
Ex_, а если ты изменишь чекбокс, как ты собираешься перенаправить направление, если направление мертво выбрано при старте Вот для этого-то и нужна
nesco писал(а):
постоянная проверка направления

карма: 22

0
Ответов: 16884
Рейтинг: 1239
#39: 2012-09-18 12:10:46 ЛС | профиль | цитата
Ex_ писал(а):
Нет. Всё абсолютно так, как расписал Netspirit.
Ну а теперь распиши, как оно будет работать. Где оно будет ловить Edit.OnEnter ?
------------ Дoбавленo в 12.10:
nesco писал(а):
как ты собираешься перенаправить направление, если направление мертво выбрано при старте ?
Нахрена тогда вообще CheckBox ?
Поди туда - не знаю куда,
принеси то - не знаю что


карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26173
Рейтинг: 2128
#40: 2012-09-18 12:12:23 ЛС | профиль | цитата
Tad писал(а):
Нахрена тогда вообще CheckBox

А я уже спросил
nesco писал(а):
или чекбокса не будет, а в твоей схеме он стоял, чтобы нас запутать

карма: 22

0
Ответов: 4633
Рейтинг: 749
#41: 2012-09-18 12:14:24 ЛС | профиль | цитата
Чекбокс - это только пример. Значение может браться откуда угодно, но главное, чтобы его проверка выполнялась один раз. Это же значит что условие не будет меняться на протяжении работы программы. Вот и встает вопрос: раз оно не меняется - зачем его при каждой итерации проверять? Tad, Edit.OnEnter - это, условно, обработчик события (точка onEnter Edit-a), вызывается из очереди сообщений.

Я понимаю, что практически такая задача вряд ли возникает, но Ex_у, наверное, нужно.
карма: 26

0
Ответов: 16884
Рейтинг: 1239
#42: 2012-09-18 12:15:40 ЛС | профиль | цитата
Netspirit, оправдывает
Netspirit писал(а):
код условный

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26173
Рейтинг: 2128
#43: 2012-09-18 12:17:50 ЛС | профиль | цитата
С чекбоксом я вижу реализацию вот так



Add(MainForm,7793634,168,154)
{
 link(onCreate,9158934:doWork2,[])
}
Add(Random,16135362,287,168)
{
 link(onRandom,10652675:doText,[])
}
Add(CheckBox,12286048,224,210)
{
 Left=10
 Top=10
 Width=65
 Caption="Bip if true"
}
Add(Edit,783691,168,252)
{
 Left=10
 Top=30
 Text=""
 link(onEnter,2173420:doEvent,[])
}
Add(Label,10652675,357,168)
{
 Left=65
 Top=35
 Width=10
 Height=17
 Caption="0"
}
Add(Hub,12970639,420,259)
{
 InCount=3
 OutCount=1
 link(onEvent1,9158934:doWork1,[(465,265)(465,159)(263,159)])
}
Add(Beep,3532036,357,224)
{
 link(onBeep,12970639:doEvent2,[(408,230)(408,272)])
}
Add(HubEx,9158934,259,168)
{
 link(onEvent,16135362:doRandom,[])
}
Add(IndexToChanel,2173420,224,259)
{
 Point(Index)
 link(onEvent1,12970639:doEvent1,[])
 link(onEvent2,12320406:doCompare,[])
 link(Index,12286048:Checked,[])
}
Add(If_else,12320406,287,266)
{
 link(onTrue,3532036:doBeep,[(341,272)(341,230)])
 link(onFalse,12970639:doEvent3,[])
 link(Op1,16135362:Random,[])
}

------------ Дoбавленo в 12.17:
Netspirit писал(а):
Чекбокс - это только пример

nesco писал(а):
чтобы нас запутать

А не вариант это сразу сказать
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#44: 2012-09-18 12:18:37 ЛС | профиль | цитата
Netspirit писал(а):
Значение может браться откуда угодно, но главное, чтобы его проверка выполнялась один раз.
если "Значение может браться откуда угодно" , то и проверка его должна выполняться при каждом возможном изменениее.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 4633
Рейтинг: 749
#45: 2012-09-18 12:20:16 ЛС | профиль | цитата
Но сказано
Ex_ писал(а):
при запуске

следовательно, "возможное изменение" - только одно и при старте программы.
карма: 26

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)