Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.08.05;
Скачать: [xml.tar.bz2];

Вниз

Завершение программы   Найти похожие ветки 

 
Andrew22   (2002-07-24 07:39) [0]

Я уже задавал этот вопрос но так и не получил ответа.
Как убрать крестик с окна в верху?


 
Tornado   (2002-07-24 07:49) [1]

Могу предложить как сделать "крестик с окна в верху" неактивным. Думаю можно не убирать, этого будет достаточно. Удачи.

procedure TForm1.FormCreate(Sender: TObject);

var hMenuHandle:HMENU;

begin
hMenuHandle := GetSystemMenu(Handle, FALSE);
IF (hMenuHandle <> 0) THEN
DeleteMenu(hMenuHandle, SC_CLOSE, MF_BYCOMMAND);
end;


 
NailMan   (2002-07-24 08:34) [2]

В свойствах формы(тобишь в окне Obj. Inspector) выключаешь в BordersIcon все что тебе нужно.


 
Andrew22   (2002-07-24 09:03) [3]

Так BorderIcon отключает все значки, а мне надо чтобы остальные остались.


 
K   (2002-07-24 09:41) [4]

Нажимаешь плюсик рядом с BorderIcon в инспекторе объектов, biSystemMenu устанавливаешь в False.


 
c0pYc@t   (2002-07-24 10:11) [5]

2 K Тогда проподет все меню со всеми кнопками


 
Andrew22   (2002-07-24 10:22) [6]

Вот именно.


 
dimkh   (2002-07-24 10:35) [7]

Как вариант - обрабатывать OnCloseQuery, в котором разрешать закрытие формы только, например, если юзер нажал на кнопку "Закрыть".


 
Andrew22   (2002-07-24 10:40) [8]

Напиши пример, плз.


 
Song   (2002-07-24 10:45) [9]

>>Напиши пример, плз.
А чего тут писать?
В обработчике проверяете координаты мыши (GetCursorPos) сравниваете их с кнопкой "Закрыть" (при желании можно рассчитать исходя из размеров окна - GetWidowRect(), и настроек системы - GetSystemMetrics() ) и соответсивенно возвращаете положительный или отрицательный CanClose.


 
Andrew22   (2002-07-24 10:56) [10]

Все равно не понял.


 
feniks   (2002-07-24 11:27) [11]


protected
Procedure WMClos(var Message : TMessage); message WM_Close;
.
.
.

procedure TForm1.WMClos(var Message: TMessage);
begin
if MessageBox(0,"Kill ?","Attention",mb_YesNo) = idYes
then begin
//что - то завершаем (если надо) перед закрытием
inherited
end
end;


 
c0pYc@t   (2002-07-24 11:43) [12]

Или просто в OnClose пишешь Action := caNone; и усё фиг закроешь )))


 
Vlad1   (2002-07-24 14:04) [13]

Можно проще:
1. Пусть Button1 - это кнопка "Закрыть".
2.
procedure TForm1.Button1Click(Sender: TObject);

begin
Button1.Tag:=1;
.............

Close;
end;

procedure TForm1.CloseQuery(...);

begin
Canclose:=(Button1.Tag=1);
end;


Разумеется, на этапе разработки установи Button1.Tag=0



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.08.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.004 c
3-13579
Alex Chu
2002-07-16 10:56
2002.08.05
Проблема в выводом последней части запроса


8-13724
Master Denis
2002-03-27 15:58
2002.08.05
Как подобраться к видео и аудио кодекам?


4-13863
Alexec
2002-05-18 11:54
2002.08.05
Процессы


7-13835
Chief
2002-05-22 09:24
2002.08.05
Набор телефонного номера


1-13660
Programmer1
2002-07-23 09:45
2002.08.05
Как открыть Excel в модальном режиме?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский