Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.08;
Скачать: CL | DM;

Вниз

Кнопки в заголовке окна.   Найти похожие ветки 

 
DikobraZ   (2002-03-27 22:18) [0]

Как убрать кнопку развернуть и как кнопке свернуть присвоить функцию спрятать??


 
Юрий Зотов ©   (2002-03-27 22:51) [1]

> Как убрать кнопку развернуть
См. BorderIcons.

> как кнопке свернуть присвоить функцию спрятать
Обрабатывать WM_SYSCOMMAND. См. в SDK.


 
DikobraZ ©   (2002-03-27 23:14) [2]

А что такое SDK и где оно живет???


 
Anatoly Podgoretsky ©   (2002-03-27 23:21) [3]

Живет у тебя на диске, в том каталоге куда ты его поставил.
В виндоус есть неплохая поисковая система, искать файл win32.hlp там и остальное Software Development Kit


 
DikobraZ ©   (2002-03-27 23:45) [4]

Я почитал справку и понял, что я совсем ничего не понял... :)
Не могли бы вы написать конкретный пример использования этого WM_SYSCOMMAND?


 
Kettle of delphi   (2002-03-28 02:02) [5]

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type
TForm1 = class(TForm)
private
{ Private declarations }
procedure WMSysCommand(var Msg: TWMSysCommand); message WM_SYSCOMMAND;
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.WMSysCommand;
begin
if Msg.CmdType = SC_MINIMIZE then Form1.Visible := false;
inherited;
end;


end.


Вот. Вместо SC_MINIMIZE может быть SC_MAXIMIZE, SC_CLOSE или что-нибудь еще. Вот, смотри (я это взял из модуля windows.pas):

{ System Menu Command Values }
{$EXTERNALSYM SC_SIZE}
SC_SIZE = 61440;
{$EXTERNALSYM SC_MOVE}
SC_MOVE = 61456;
{$EXTERNALSYM SC_MINIMIZE}
SC_MINIMIZE = 61472;
{$EXTERNALSYM SC_MAXIMIZE}
SC_MAXIMIZE = 61488;
{$EXTERNALSYM SC_NEXTWINDOW}
SC_NEXTWINDOW = 61504;
{$EXTERNALSYM SC_PREVWINDOW}
SC_PREVWINDOW = 61520;
{$EXTERNALSYM SC_CLOSE}
SC_CLOSE = 61536;
{$EXTERNALSYM SC_VSCROLL}
SC_VSCROLL = 61552;
{$EXTERNALSYM SC_HSCROLL}
SC_HSCROLL = 61568;
{$EXTERNALSYM SC_MOUSEMENU}
SC_MOUSEMENU = 61584;
{$EXTERNALSYM SC_KEYMENU}
SC_KEYMENU = 61696;
{$EXTERNALSYM SC_ARRANGE}
SC_ARRANGE = 61712;
{$EXTERNALSYM SC_RESTORE}
SC_RESTORE = 61728;
{$EXTERNALSYM SC_TASKLIST}
SC_TASKLIST = 61744;
{$EXTERNALSYM SC_SCREENSAVE}
SC_SCREENSAVE = 61760;
{$EXTERNALSYM SC_HOTKEY}
SC_HOTKEY = 61776;
{$EXTERNALSYM SC_DEFAULT}
SC_DEFAULT = 61792;
{$EXTERNALSYM SC_MONITORPOWER}
SC_MONITORPOWER = 61808;
{$EXTERNALSYM SC_CONTEXTHELP}
SC_CONTEXTHELP = 61824;
{$EXTERNALSYM SC_SEPARATOR}
SC_SEPARATOR = 61455;

{ Obsolete names (Устаревшие имена) }
{$EXTERNALSYM SC_ICON}
SC_ICON = SC_MINIMIZE;
{$EXTERNALSYM SC_ZOOM}
SC_ZOOM = SC_MAXIMIZE;

Т.е., например, вместо SC_MINIMIZE можно написать просто число 61472.


 
Юрий Зотов ©   (2002-03-28 12:31) [6]

> вместо SC_MINIMIZE можно написать просто число 61472

Но лучше этого не делать.



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

Текущий архив: 2002.04.08;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.009 c
14-22817
Berserker
2002-02-27 03:34
2002.04.08
Помогите с обучением в делфи


4-22890
Ghost.
2002-02-05 15:06
2002.04.08
К вопросу о панели задачь...


3-22565
_Oleg_
2002-03-13 22:34
2002.04.08
Не передается строка длинее 32768 символов


1-22616
Goblinus
2002-03-26 16:40
2002.04.08
программное эмулирование управляющих клавиш


4-22874
Holms
2002-01-27 19:07
2002.04.08
Как скрыть програму от Ctrl+Alt+Del в WinNT/Win2k?