Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Значок в левом верхнем углу [D7, WinXP]


Viktop ©   (2005-01-03 17:17:00) 

Извините за дурацкое название темы.
Как заблокировать доступ к меню (в левом верхнем углу формы)? Менять вид формы во время разработки нежелательно


dimaxx   (2005-01-07 16:28:00) [1]

2 GrayFace: Пардон, ошибся...


GrayFace   (2005-01-07 08:35:00) [2]

dimaxx ©   (05.01.05 0:42) [14]
SetWindowLong(FormHandle,GWL_STYLE,GetWindowLong(FormHandle,GWL_STYLE) and(not WS_SYSMENU));

Fay ©   (05.01.05 0:01) [13]
После этого не будет мини/максимайза.

Действительно.


dimaxx   (2005-01-05 00:42:00) [3]

SetWindowLong(FormHandle,GWL_STYLE,GetWindowLong(FormHandle,GWL_STYLE) or (not WS_SYSMENU));

где FormHandle и есть хэндл нужной формы, у которой надо убрать меню. Кстати, убирается и иконка тоже...


Fay   (2005-01-05 00:01:00) [4]

Сори за [1]. Просто ошибся при подборе 8)
2 GrayFace ©   (04.01.05 16:16) [11]
После этого не будет мини/максимайза.

2 Viktop   (04.01.05 17:22) [12]
Купите лучше себе хороший букварь, да посмотрите исходники компонентов.


Viktop   (2005-01-04 17:22:00) [5]

to GrayFace
Я ещё больше запутался :-(
Если нетрудно, то приведи полный код (от Unit1 до end.)


GrayFace   (2005-01-04 16:16:00) [6]

ibSystemMenu в BorderIcons.
alless   (04.01.05 15:05) [10]
procedure CreateParams(var Params : TCreateParams);
после implements: Fay ©   (03.01.05 17:41) [1]

procedure CreateParams(var Params : TCreateParams); override;
И не то, что Fay писал, а Params.Style := Params.Style and not WS_SYSMENU;


alless   (2005-01-04 15:05:00) [7]

2: Viktop   (04.01.05 10:49) [5]
в public TForm1 пишем:
procedure CreateParams(var Params : TCreateParams);
после implements: Fay ©   (03.01.05 17:41) [1]


Vit@ly   (2005-01-04 12:19:00) [8]

Похоже не вруился в вопрос :(


Vit@ly   (2005-01-04 12:19:00) [9]

не вруБился


Viktop   (2005-01-04 12:10:00) [10]

to Vit@ly
Это ты к чему?


Vit@ly   (2005-01-04 11:54:00) [11]

Enabled:= False???


Viktop   (2005-01-04 10:49:00) [12]

to dimaxx
Можно поподробнее?

to Fay
В свойствах формы нет CreateParams. Куда это писать? И надо блокировать это меню совсем (чтобы иконка была видна, но не доступна). Просто я использую один компонент и он [компонент] меняет стандартное меню.


dimaxx   (2005-01-03 21:39:00) [13]

Нафига? Не проще ли убрать из стиля окна WS_SYSMENU через GetWindowLong/SetWindowLong?


Fay   (2005-01-03 17:48:00) [14]

GanibalLector ©   (03.01.05 17:46) [2]
Это там, где иконка формы 8)


GanibalLector   (2005-01-03 17:46:00) [15]

ШО за значок(или меню)???Где Вы его увидели???


Fay   (2005-01-03 17:41:00) [16]

Перекрой CreateParams. Типа

procedure TForm1.CreateParams(var Params : TCreateParams);
begin
 inherited;
 Params.Style := Params.Style or WS_POPUP or WS_MINIMIZEBOX or WS_MAXIMIZEBOX;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо