Вверх ↑
Этот топик читают: Гость
Ответов: 99
Рейтинг: 1
#1: 2008-03-17 01:02:23 ЛС | профиль | цитата
Есть ли схемы или возможен такой вариант...? При закрывании главной формы программы (крестиком сверху) реализовать всплывающее окно "мол вы точно хотите закрыть программу?" Да - (close) , НЕТ - не закрывать... (в режиме BorderStyle -bsSingle)
?
карма: 0

0
Ответов: 2060
Рейтинг: 28
#2: 2008-03-17 01:16:02 ЛС | профиль | цитата
NetCom,
code_8642.txt
карма: 1

0
файлы: 1code_8642.txt [805B] [463]
Ответов: 9906
Рейтинг: 351
#3: 2008-03-17 02:13:17 ЛС | профиль | цитата
Офигеть...
Эдик, у нас что, пример TutorialEventFromData.sha перстал работать уже

Или его адаптированная версия: code_8644.txt
карма: 9

0
файлы: 1code_8644.txt [524B] [329]
Ответов: 99
Рейтинг: 1
#4: 2008-03-17 11:14:13 ЛС | профиль | цитата
Спасибо камрады ...невнимателен был..
карма: 0

0
Ответов: 9906
Рейтинг: 351
#5: 2008-03-17 12:12:21 ЛС | профиль | цитата
Хотя можно и еще проще

#sha
Add(MainForm,14376286,273,189)
{
Left=20
Top=105
BorderStyle=1
Point(Close)
link(Close,70288:GetData,[])
}
Add(Message,8555700,322,140)
{
Message="Are you sure for close Application?"
Caption="Confirmation"
Type=2
Icon=2
Point(onYES)
link(onMessage,16506829:doWork2,[])
link(onYES,16506829:doWork3,[(368,153)])
}
Add(EventFromData,70288,273,140)
{
link(onEvent,8555700:doMessage,[])
}
Add(HubEx,16506829,364,133)
{
Angle=3
link(onEvent,70288:doData,[(368,129)(261,129)(261,146)])
}
карма: 9

0
Ответов: 99
Рейтинг: 1
#6: 2008-03-17 15:43:05 ЛС | профиль | цитата
Все примеры, отличные для понемания как надо делать..только у меня несколько другой вопрос.. не полность расскрыл его в первом посту.. При закрытии программы если 0 - то закрывать без уведомления пользователя, если в памяти 1 то выдать табличку с выбором...
карма: 0

0
Ответов: 9906
Рейтинг: 351
#7: 2008-03-17 15:53:38 ЛС | профиль | цитата
Ну попробуй раскрыть в восьмом...

Потому-что понять что такое "если 0" - не возможно, можно только угадать
И уж тем более - в чем могут быть проблемы, если "Все примеры, отличные для понемания как надо делать"
карма: 9

0
Ответов: 99
Рейтинг: 1
#8: 2008-03-17 15:55:28 ЛС | профиль | цитата
Вот..криво и на скорую руку.. но то что нужно..может пригодиться ..

#pas
Add(MainForm,14376286,168,280)
{
Left=20
Top=105
BorderStyle=1
Point(Close)
link(Close,70288:GetData,[])
}
Add(Hub,15813946,616,217)
{
link(onEvent1,9711411:doEvent2,[(660,223)(660,181)(93,181)(93,139)])
link(onEvent2,5799794:doEvent2,[(660,230)(660,279)(107,279)(107,328)])
}
Add(EventFromData,70288,168,217)
{
link(onEvent,5304167:doEvent,[(205,223)(205,230)])
link(Data,5158148:Var2,[])
}
Add(Hub,13537568,231,217)
{
link(onEvent1,70288:doData,[(275,223)(275,211)(156,211)(156,223)])
link(onEvent2,10375780:doData,[])
}
Add(Message,8555700,455,224)
{
Message="exit?"
Type=2
link(onMessage,768879:doCompare,[])
}
Add(GetDataEx,5158148,161,196)
{
link(Data,14363585:Value,[])
}
Add(Memory,14363585,168,126)
{
Default=String(0)
}
Add(Debug,5304167,210,224)
{
link(onEvent,13537568:doEvent1,[(226,230)(226,223)])
}
Add(Case,15016216,357,224)
{
Value=String(0)
link(onNextCase,8555700:doMessage,[])
link(onTrue,5799794:doEvent1,[(401,237)(401,272)(107,272)(107,321)])
}
Add(DoData,10375780,294,224)
{
link(onEventData,15016216:doCase,[])
link(Data,5158148:Var3,[(300,205)])
}
Add(If_else,768879,511,224)
{
Op2=Integer(6)
link(onTrue,16731862:doClear,[])
}
Add(Memory,16731862,560,217)
{
Default=String(0)
link(onData,15813946:doEvent1,[])
}
Add(Hub,5799794,119,315)
{
InCount=2
OutCount=1
link(onEvent1,14376286:doClose,[(159,321)(159,307)])
}
Add(Button,8480558,140,28)
{
Left=300
Top=20
Caption="1"
link(onClick,12382691:doClear,[(184,34)(184,41)])
}
Add(Memory,12382691,196,28)
{
Default=String(1)
link(onData,9399095:In,[(261,34)(261,41)])
}
Add(LineBreak,2738563,49,126)
{
Caption="ask"
link(Out,9711411:doEvent1,[])
Primary=[9399095,245,-91]
}
Add(Hub,9711411,105,126)
{
InCount=2
OutCount=1
link(onEvent1,14363585:doValue,[])
}

карма: 0

0
Ответов: 9906
Рейтинг: 351
#9: 2008-03-17 16:27:15 ЛС | профиль | цитата
Никак не пойму, почему надо именно криво, и именно на скорую руку....


#sha
Add(MainForm,14376286,140,294)
{
Left=20
Top=105
BorderStyle=1
Point(Close)
link(Close,70288:GetData,[])
}
Add(Button,8480558,140,168)
{
Left=300
Top=20
Caption="1"
Data=Integer(0)
link(onClick,13963720:doValue,[])
}
Add(EventFromData,70288,140,231)
{
link(onEvent,768879:doCompare,[])
}
Add(Message,8555700,252,231)
{
Message="exit?"
Type=2
Point(onYES)
link(onMessage,2256661:doWork1,[(298,237)])
link(onYES,2256661:doWork2,[])
}
Add(HubEx,2256661,294,231)
{
Angle=1
link(onEvent,70288:doData,[(298,257)(126,257)(126,237)])
}
Add(If_else,768879,196,231)
{
link(onTrue,8555700:doMessage,[])
link(Op1,13963720:Value,[])
}
Add(Memory,13963720,196,168)
{
}
------------ Дoбавленo:

"не криво" же быстрее рисуется
карма: 9

0
Разработчик
Ответов: 26305
Рейтинг: 2146
#10: 2008-03-17 16:27:37 ЛС | профиль | цитата
Немного опоздал, но тоже сделал на большее количество кнопок, глядишь, пригодится



Add(MainForm,14376286,329,259)
{
Left=20
Top=105
BorderStyle=1
Point(Close)
link(onCreate,8011071:In,[])
link(Close,70288:GetData,[])
}
Add(Button,8480558,231,119)
{
Left=300
Top=20
TabOrder=-1
Caption="1"
link(onClick,4718901:doWork2,[])
}
Add(EventFromData,70288,329,196)
{
link(onEvent,4181891:doCompare,[])
}
Add(ChanelToIndex,4718901,336,112)
{
Count=4
link(onIndex,11542603:doValue,[])
}
Add(Message,8555700,448,196)
{
Message="exit?"
Type=2
Point(onYES)
link(onMessage,2117105:doWork3,[(494,202)])
link(onYES,2117105:doWork2,[(511,209)(511,174)])
}
Add(LineBreak,1861011,231,98)
{
Caption="Reset"
link(Out,4718901:doWork1,[(305,104)(305,118)])
Primary=[8011071,154,175]
}
Add(Memory,11542603,392,112)
{
}
Add(If_else,4181891,392,196)
{
Type=5
link(onTrue,8555700:doMessage,[])
link(Op1,11542603:Value,[])
}
Add(Button,11742285,231,189)
{
Left=300
Top=70
TabOrder=-1
Caption="3"
link(onClick,4718901:doWork4,[(299,195)(299,139)])
}
Add(HubEx,2117105,490,161)
{
Angle=2
link(onEvent,70288:doData,[(317,174)(317,202)])
}
Add(Button,7715430,231,154)
{
Left=300
Top=45
TabOrder=-1
Caption="2"
link(onClick,4718901:doWork3,[(299,160)(299,132)])
}

карма: 22

0
Ответов: 9906
Рейтинг: 351
#11: 2008-03-17 16:42:10 ЛС | профиль | цитата
Если в твоей схеме совсем ВЫКНУТЬ линию RESET, то НИЧЕГО не изменится
карма: 9

0
Разработчик
Ответов: 26305
Рейтинг: 2146
#12: 2008-03-17 16:52:24 ЛС | профиль | цитата
Galkov, да, конечно, можно выкинуть, но ее можно и прицепить к какому-либо сбросу, предположим -- "Отмена изменений".
карма: 22

0
Ответов: 99
Рейтинг: 1
#13: 2008-03-17 19:47:15 ЛС | профиль | цитата
Galkov,
NetCom писал(а):
в твоей последней схеме в памяти надо наверно стринг=0 , без него не выходит нужная работа (у меня)
За схему спасибо. Просто к компу на 5 минут подошел форум проверить..по-этому быстро и криво сделал
карма: 0

0
Ответов: 9906
Рейтинг: 351
#14: 2008-03-17 19:51:14 ЛС | профиль | цитата
NetCom писал(а):
по-этому быстро и криво сделал

Я же тебе рассказываю: "не криво" - быстрее
Посчитай - раза в три...
карма: 9

0
Ответов: 99
Рейтинг: 1
#15: 2008-03-17 20:12:17 ЛС | профиль | цитата
)) вот че я непонемаю так какого фига схема правильна а хиасм реагирует на пропись нуля в память..ибо в сравнении NULL и в памяти... ("невозможное возможно" ™) хиасм переставлю ка..а то как с таймерами..выключены но если их больше 2х в схеме не стого не сего запускается вместо одного другой... (это у меня...) А за схему сенкс исчо раз

...вообщем по-чемуто глючит твой пример (хотя пример правильный)...остался на том что привел от себя...
Проверял в XP SP2 и в Vista x32
карма: 0

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