Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.79/352: Рейтинг темы: голосов - 352, средняя оценка - 4.79
4 / 4 / 0
Регистрация: 10.10.2009
Сообщений: 301

Убрать кнопку "Закрыть" в форме

02.10.2010, 17:53. Показов 71752. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер.
Поскажите можно ли как-нибудь убрать кнопку закрыть из угла формы и сотавить только развернуть и свернуть?, либо запрограмировать действие, которое будет запускаться при закрытии с помощью этой кнопки.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.10.2010, 17:53
Ответы с готовыми решениями:

Переместить кнопку "закрыть" в форме
Добрый день. Подскажите, пожалуйста, можно ли переместить кнопки "закрыть", "свернуть", "развернуть" из правого верхнего...

Сделать неактивной или вообще убрать кнопку "Закрыть"
Народ, кто знает, как можно сделать неактивной или убрать кнопку "Закрыть"? Искал-искал, все вроде свойства просмотрел, так и не нашёл...

Как в форме заблокировать крестик(кнопку закрыть)?
Как в форме заблокировать крестик(кнопку закрыть)?

12
 Аватар для Konctantin
970 / 773 / 171
Регистрация: 12.04.2009
Сообщений: 1,700
02.10.2010, 18:01
свойство формы FormBorderStyle:
C#
1
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
2
4 / 4 / 0
Регистрация: 10.10.2009
Сообщений: 301
02.10.2010, 18:06  [ТС]
Ну там можно конечно выбрать стиль в котором нет виндоусовской рамки, но тогда окно даже не потаскать по экрану.
0
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8728 / 3680 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
02.10.2010, 18:27
Можно так заблокировать:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
using System.Runtime.InteropServices;
...
const uint MF_ENABLED = 0x0U;
const uint MF_DISABLED = 0x2U;
 
[DllImport("user32.dll", SetLastError = true)]
static extern IntPtr GetSystemMenu(
    IntPtr hWnd,
    bool bRevert
    );
 
[DllImport("user32.dll", SetLastError = true)]
static extern IntPtr EnableMenuItem(
    IntPtr hWnd,
    uint uIDEnableItem,
    uint uEnable
    );
 
[DllImport("user32.dll", SetLastError = true)]
static extern uint GetMenuItemID(
    IntPtr hWnd,
    uint nPos
    );
...
void SetCrossActive(bool enabled)
{
    IntPtr hMenu = GetSystemMenu(this.Handle, false);
    uint menuID = 0U;
    if (hMenu != IntPtr.Zero) {
        menuID = GetMenuItemID(hMenu, 6U);
        EnableMenuItem(hMenu, menuID, enabled ? MF_ENABLED : MF_DISABLED);
    }
}
1
 Аватар для Konctantin
970 / 773 / 171
Регистрация: 12.04.2009
Сообщений: 1,700
02.10.2010, 20:01
А так разве нельзя?
C#
1
2
3
4
5
        private void Form1_FormClosing(object sender, FormClosingEventArgs e)
        {
            e.Cancel = true;
            this.WindowState = FormWindowState.Minimized;
        }
0
57 / 57 / 11
Регистрация: 07.03.2010
Сообщений: 157
05.10.2010, 15:33
Лучший ответ Сообщение было отмечено как решение

Решение

C#
1
2
3
4
        private void Form1_Load(object sender, EventArgs e)
        {
            this.ControlBox = false;
        }
17
Мохаммед Али
 Аватар для asd321
131 / 70 / 5
Регистрация: 14.08.2009
Сообщений: 916
11.10.2011, 15:33
так как оставить толко одну кнопку закрытия да и ито маленькой сделать?
0
Заблокирован
11.10.2011, 15:39
asd321,
C#
1
FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
11.10.2011, 15:46
Цитата Сообщение от asd321 Посмотреть сообщение
так как оставить толко одну кнопку закрытия да и ито маленькой сделать?
Изменить свойство FormBorderStyle на SizableToolWindow или FixedToolWindow
2
Мохаммед Али
 Аватар для asd321
131 / 70 / 5
Регистрация: 14.08.2009
Сообщений: 916
11.10.2011, 15:52
Цитата Сообщение от kolorotur Посмотреть сообщение
Изменить свойство FormBorderStyle на SizableToolWindow или FixedToolWindow

Не по теме:

а как я это упустил ....

0
 Аватар для Игрок_со_Смерть
37 / 37 / 6
Регистрация: 06.01.2013
Сообщений: 195
28.02.2013, 11:22
Цитата Сообщение от piloterist Посмотреть сообщение
Ну там можно конечно выбрать стиль в котором нет виндоусовской рамки, но тогда окно даже не потаскать по экрану.
А не судьба написать метод на событие клик формы и таскать за любое место формы?
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
28.02.2013, 11:36
Цитата Сообщение от Игрок_со_Смерть Посмотреть сообщение
А не судьба написать метод на событие клик формы и таскать за любое место формы?
Я думаю, за два с лишним года человек разобрался
0
 Аватар для Eclipze
29 / 29 / 8
Регистрация: 28.01.2013
Сообщений: 211
28.02.2013, 11:43
Цитата Сообщение от Genu Посмотреть сообщение
C#
1
2
3
4
        private void Form1_Load(object sender, EventArgs e)
        {
            this.ControlBox = false;
        }
обсолютно прав, у каждой формы есть это свойство. Ставишь false и радуешься=)
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
28.02.2013, 11:43
Помогаю со студенческими работами здесь

Убрать кнопки Свернуть Развернуть Закрыть на форме
здравствуйте, собственно сабж, как? спс

Как организовать событие при нажатии на кнопку ЗАКРЫТЬ на форме?
Подскажите пожалуйста, мне нужно чтобы при выходе из программы файл менял разрешение из .txt в .exe на данный момент у меня при...

Как убрать кнопку Создать на форме списка
Как?, в коллекции Элементы такого свойства нет.

Как скрыть кнопку "закрыть" на форме?
HI ALL Как сделать, чтобы на форме (в ControlBox-е) кнопка закрытия (Х) была не доступна (или скрытой). Или по-другому - чтобы...

Как отключить кнопку "Закрыть" на форме?
Как отключить кнопку закрыть на форме в Visual Studio так, чтобы развернуть и свернуть остались, так как на скриншоте. Не пишите про...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru