![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Значок в левом верхнем углу [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;