Форум: "Начинающим";
Текущий архив: 2007.10.07;
Скачать: [xml.tar.bz2];
ВнизКнопка выхода Найти похожие ветки
← →
Washington © (2007-09-10 13:04) [0]Надо либо убрать кнопку выхода (крестик то бишь), либо сверху свою закинуть либо запрограммировать имеющуюся. Подскажите, как? В принципе сгодится, если просто ентот крестик disable сделать
← →
homm © (2007-09-10 13:05) [1]Есть событие CloseQuery, кажеться, там флаг есть припятствующий закрытию.
← →
Вася Правильный (2007-09-10 13:13) [2]form.borderstyle=bsNone
← →
homm © (2007-09-10 13:15) [3]> [2] Вася Правильный (10.09.07 13:13)
> form.borderstyle=bsNone
Это совсем уж жестоко :)
← →
{RASkov} © (2007-09-10 13:17) [4]> [0] Washington © (10.09.07 13:04)
Есть
CanClose:=False;
И еще есть
Action:=caNone;
Найдешь где они?
ЗЫ про один уже сказали где....
← →
Anatoly Podgoretsky © (2007-09-10 13:18) [5]> Washington (10.09.2007 13:04:00) [0]
Можно через запрет пункта системного меню, решений вообще то много.
← →
Denis_ © (2007-09-10 13:21) [6]BorderIcons?
← →
Washington © (2007-09-10 13:25) [7]CanClose:=false сделал, нормально вроде. Спасибо
← →
{RASkov} © (2007-09-10 13:31) [8]> [7] Washington © (10.09.07 13:25)
> CanClose:=false сделал, нормально вроде
"Опасная штука" :)
Лучше на caNone посмотри
:)
← →
clickmaker © (2007-09-10 13:31) [9]SetClassLong(Handle, GCL_STYLE, GetClassLong(Handle, GCL_STYLE) or CS_NOCLOSE);
Handle - формы
← →
Washington © (2007-09-10 13:34) [10]Ага, получается по кнопке Выход тоже фиг выйдешь, попробую caNone
← →
Anatoly Podgoretsky © (2007-09-10 13:37) [11]> Washington (10.09.2007 13:34:10) [10]
Попробуй программиста нанять на работу, эффект офигительный.
← →
homm © (2007-09-10 13:39) [12]> [11] Anatoly Podgoretsky © (10.09.07 13:37)
+1 :)
← →
Denis_ © (2007-09-10 13:40) [13]
> Washington © (10.09.07 13:25) [7]
> CanClose:=false сделал, нормально вроде. Спасибо
беспонт.ИМХО.тк кликаешь по вроде-бы работающей кнопке, оно не закрывается.обычный юзверь начинает тихо психовать.
← →
{RASkov} © (2007-09-10 13:40) [14]> [10] Washington © (10.09.07 13:34)
Просто в этом случае(CanClose) Win не сможет перезагрузится или завершится.... если твоя "прога" будет всегда возврощать CanClose = False...
С OnClose таких "проблем" нет...
Ты на закрытие проги анализируй ситуацию и если нужная тебе, то делай типа так:
if PressedCloseMyButton then Action:=caFree else Action:=caNone;
← →
Washington © (2007-09-10 13:43) [15]
> if PressedCloseMyButton then Action:=caFree else Action:
> =caNone;
Так я и сделал, но крестик :) нажимается, пункт закрыть в системном меню доступен. Бесюсь
← →
Denis_ © (2007-09-10 13:45) [16]
>
> Так я и сделал, но крестик :) нажимается, пункт закрыть
> в системном меню доступен. Бесюсь
Вот-вот, и у меня телепатор заработал!
← →
homm © (2007-09-10 13:47) [17]> [16] Denis_ © (10.09.07 13:45)
> Вот-вот, и у меня телепатор заработал!
Скоро геморой настигнет, совсем как программист будешь :)
← →
{RASkov} © (2007-09-10 13:50) [18]> [15] Washington © (10.09.07 13:43)
А ты сообщай пользователю, почему программа не может закрыться и делов-то...
← →
Denis_ © (2007-09-10 13:54) [19]
> А ты сообщай пользователю, почему программа не может закрыться
> и делов-то...
А от этого юзвери вообще звереют.
← →
{RASkov} © (2007-09-10 14:00) [20]> [19] Denis_ © (10.09.07 13:54)
Смотря, что за программа и как "она" сообщит юзверю....
Много от чего - чего зависит....
А если пользователь "бешанный" то это его проблемы.... есть доктора.... но вряд ли помогут :)
← →
{RASkov} © (2007-09-10 14:01) [21]Добавлю к [20]
Пользователь может отказаться от такой программы - это его право, но и минус автору программы....
Так, что есть над чем задуматься...
← →
Anatoly Podgoretsky © (2007-09-10 14:02) [22]> {RASkov} (10.09.2007 13:40:14) [14]
> Просто в этом случае(CanClose) Win не сможет перезагрузится или завершится
Вот за это уши оторву, тут батарея кончается и база в памяти.
← →
Washington © (2007-09-10 14:02) [23]да не, прога должна закрываться, но только по моей кнопке, а не по крестику :)
← →
Anatoly Podgoretsky © (2007-09-10 14:03) [24]> Denis_ (10.09.2007 13:54:19) [19]
Естественно, он еще и издевается наглец.
← →
{RASkov} © (2007-09-10 14:03) [25]> [22] Anatoly Podgoretsky © (10.09.07 14:02)
:) О чем я и предупредил...
← →
{RASkov} © (2007-09-10 14:03) [26]> [24] Anatoly Podgoretsky © (10.09.07 14:03)
:о)
← →
clickmaker © (2007-09-10 14:05) [27]
> [23] Washington © (10.09.07 14:02)
[9] читаем?
плюс еще
EnableMenuItem(GetSystemMenu(Handle, False), SC_CLOSE, MF_GRAYED or MF_BYCOMMAND);
← →
{RASkov} © (2007-09-10 14:09) [28]> [23] Washington © (10.09.07 14:02)
> да не, прога должна закрываться, но только по моей кнопке,
> а не по крестику :)
Кстати.... А какая разница? Чем твоя "кнопка" так особенна, что закрывать программу нужно только ей?
← →
Anatoly Podgoretsky © (2007-09-10 14:11) [29]> clickmaker (10.09.2007 14:05:27) [27]
Более чес достаточно по задаче, только кроме наверно кнопки пропадет и Alt+F4 но это может и хорошо, если процедура закрытия особая. Только обязательно предпринять все меры что бы программа немедленно могла сама закрыться при выключение Виндоус и чтобы ее возможно было снять через диспетчер задач.
Этот тот минимум который необходимо обеспечитью
← →
Anatoly Podgoretsky © (2007-09-10 14:12) [30]> {RASkov} (10.09.2007 14:09:28) [28]
Особенностью процедуры закрытия, а как сделать с помощью системного крестика наверно не знает.
← →
Washington © (2007-09-10 14:15) [31]
> {RASkov} © (10.09.07 14:09) [28]
> > [23] Washington © (10.09.07 14:02)> да не, прога должна
> закрываться, но только по моей кнопке,> а не по крестику
> :)Кстати.... А какая разница? Чем твоя "кнопка" так особенна,
> что закрывать программу нужно только ей?
НЕ знаю почему но крестик :) закрывает прогу, а процесс висит в диспетчере. По ходу крестик :) закрывает только одну форму, а надо бы несколько
← →
{RASkov} © (2007-09-10 14:16) [32]> [30] Anatoly Podgoretsky © (10.09.07 14:12)
Тогда [11] ну прям в тему :)
← →
{RASkov} © (2007-09-10 14:17) [33]> [31] Washington © (10.09.07 14:15)
Ужасно.... :)
← →
clickmaker © (2007-09-10 14:17) [34]
> крестик :) закрывает только одну форму, а надо бы несколько
один крестик - одна форма.
Если форма не главная, то логично, что процесс не закончится
Если форма главная - ну, может быть, где-то остался недобитый поток
← →
Dib@zol © (2007-09-10 14:17) [35]> По ходу крестик :) закрывает только одну форму, а надо бы несколько
Ога, собственное окно, и ещё вдогонку десяток случайных чужих...
← →
{RASkov} © (2007-09-10 14:19) [36]> [31] Washington © (10.09.07 14:15)
У тебя главная форма кто? Ты ее крестиком закрываешь?
Если последний ответ положительный, то что у тебя на соответствующих событиях делается?
← →
{RASkov} © (2007-09-10 14:20) [37]> Ты ее крестиком закрываешь?
Ударение на слово её
← →
Washington © (2007-09-10 14:27) [38]Когда главную закрываю всё ОК, просто мне надо ещё и не главную закрывать. Т.е. чтобы выйти можно было из двух форм.
← →
Dib@zol © (2007-09-10 14:33) [39]Нук и прописывай в обработчике закрытия главной формы - ДочерняяФорма1.Close...
← →
clickmaker © (2007-09-10 14:36) [40]
> [39] Dib@zol © (10.09.07 14:33)
может, наоборот?
← →
clickmaker © (2007-09-10 14:37) [41]
> чтобы выйти можно было из двух форм
кстати, непонятно, причем тут крестик тогда?
← →
{RASkov} © (2007-09-10 14:37) [42]> [38] Washington © (10.09.07 14:27)
> просто мне надо ещё и не главную закрывать
Ее закроет главная...
В прочем там много нюансов, так как твоего проета никто не видел...
На вопросы которые ты задал - ответы получил, так что думай, как лучше организовать алгоритм работы твоей программы.
← →
Washington © (2007-09-10 14:50) [43]Наконец сделал тханкс всем
← →
Anatoly Podgoretsky © (2007-09-10 15:05) [44]Ну приходите еще на порку.
← →
Washington © (2007-09-10 15:26) [45]Обязательно
Страницы: 1 2 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.10.07;
Скачать: [xml.tar.bz2];
Память: 0.55 MB
Время: 0.043 c