С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.51/251: Рейтинг темы: голосов - 251, средняя оценка - 4.51
17 / 17 / 3
Регистрация: 17.02.2010
Сообщений: 211

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

14.11.2012, 13:08. Показов 46897. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.
Нужно либо деактивировать кнопку на форме в верхнем правом углу [X] (закрыть/выйти из формы), либо вооще убрать эту кнопку. Подскажите, как это можно реализовать? Просмотрел своийства формы и по этой кнопке ничего не нашел мож плохо смотрел.
И еще вопрос, попросил админ отобразить в строке IP-адрес, сделал так:
C#
1
2
3
4
            myHost = System.Net.Dns.GetHostName();
            compIP = System.Net.Dns.GetHostEntry(myHost).AddressList[0].ToString();
 
            label5.Text = compIP;
выводится какая-то фигня, показал админу, говорит что не та версия, нужна V.4. И как указать чтобы отбражалась нужная версия?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.11.2012, 13:08
Ответы с готовыми решениями:

Как сделать крестик неактивным в заголовке формы
как можно выключить крестик на форме ?.Вот именно выключить а не свойством controlBox и не событием formClosing(и рисовать в picturebox...

Как из формы убрать кнопку CloseButton (крестик) в верхнем правом углу?
Хочу сделать subj. Вопрос: как из формы убрать кнопку CloseButton (крестик) в верхнем правом углу? MinButton и MaxButton убираются в...

Как узнать, что юзер нажал крестик закрытия формы?
В builder открыто модально окно: Form2->ShowModal(); В нём при срабатывании таймера начинается работа (счёт). Некий Label показывает...

6
 Аватар для andrew_w2k
341 / 341 / 90
Регистрация: 04.03.2010
Сообщений: 648
14.11.2012, 13:50
насчёт того, чтобы убрать в заголовке формы кнопку закрытия окна, это нужно прибегнуть к каким-нибудь народным средствам. Но зато можно легко убрать стандартный заголовок окна в свойствах формы, а потом создать свой.
и на счёт IP
C#
1
2
3
4
5
string strHostName = System.Net.Dns.GetHostName();
            IPHostEntry ipEntry = System.Net.Dns.GetHostEntry(strHostName);
            IPAddress[] addr = ipEntry.AddressList;
 
            Console.WriteLine(addr[addr.Length - 1]);
1
18 / 18 / 4
Регистрация: 11.01.2008
Сообщений: 51
14.11.2012, 14:31
Можно только весь блок из трех кнопок убрать:
Стиль окна -> ControlBox = false
2
 Аватар для Spectral-Owl
608 / 583 / 157
Регистрация: 29.06.2010
Сообщений: 1,620
14.11.2012, 14:45
Цитата Сообщение от Illusive Посмотреть сообщение
Можно только весь блок из трех кнопок убрать:
Стиль окна -> ControlBox = false
Явно не в C#

проще:
C#
1
this.BorderStyle=FormBorderStyle.None;
потом добавить в форму панель со свойством Dock==true, и уже с ней работать как с заголовком формы.
Плюс - с таким заголовком можно делать практически всё что угодно.
Минус - теряется визуализация заголовка от винды. ну ещё как небольшой минус - обработку перетаскивания формы придётся переписывать самому.

Добавлено через 4 минуты
Цитата Сообщение от Spectral-Owl Посмотреть сообщение
Явно не в C#
Ан-нет, прошу прощения, и правда можно. "Стиль окна" меня смутил. BorderStyle - это enum и обращаться к его свойствам мне показалось дико)
а так работает
C#
1
this.ControlBox=false;
правда ни тот ни тот пример не застрахуют от Alt+F4. щас обработчик ок выкину

Добавлено через 1 минуту
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 private void frmParent_FormClosing(object sender, FormClosingEventArgs e)
        {
                //при попытке закрытия программы пользователем
                if (e.CloseReason == CloseReason.UserClosing)
                {
                    //устанавливает флаг отмены события в истину
                    e.Cancel = true;
                    //спрашивает стоит ли завершится
                    if (MessageBox.Show("Вы уверены что хотите закрыть программу?", "Выйти?", MessageBoxButtons.YesNo) == DialogResult.Yes)
                    {
                        //и после этого только завершается работа приложения
                        Application.Exit();
                    }
                }
        }
1
17 / 17 / 3
Регистрация: 17.02.2010
Сообщений: 211
14.11.2012, 16:33  [ТС]
Всем спасибо за участие!!!
По IP-шке все получилось! А с кнопкой, да оставил я ее, но немного переработал код Spectral-Owl:
C#
1
2
3
4
5
6
if (MessageBox.Show("Вы уверены что хотите закрыть программу?", "Выйти?", MessageBoxButtons.YesNo) == DialogResult.Yes)
                {
                    //и после этого только завершается работа приложения
                    Application.Exit();
                }
                else WindowState = FormWindowState.Minimized;
т.е. я на ДА закрываю прогу а на НЕТ сворачиваю ее в трей.
Тут еще админ попросил когда наводиш курсор мышиный на значек в трее и кликаем правую кнопку, нужно развернуть менюшку с набором пользовательских пунктиков(заданный список)! Может кто подскажет каким образом отловить подобное нажатие мышки?
0
 Аватар для Spectral-Owl
608 / 583 / 157
Регистрация: 29.06.2010
Сообщений: 1,620
14.11.2012, 17:44
notifyIcon тебе в помощь)
правда сам не знаю как визуально размещать в данном контроле менюшку, но программно как-то так:

C#
1
2
3
4
5
6
7
8
            MenuItem m2=new MenuItem("m2");
            MenuItem m1=new MenuItem("m1");
 
            ContextMenu a = new ContextMenu();
            a.MenuItems.Add(m1);
            a.MenuItems.Add(m2);
 
            notifyIcon1.ContextMenu = a;
у MenuItem могут быть как коллекции собственных MenuItem'ов, так и обработчики различных событий
1
17 / 17 / 3
Регистрация: 17.02.2010
Сообщений: 211
14.11.2012, 23:32  [ТС]
Spectral-Owl, спасибо, завтра попробую, думаю админ бу доволен
Всем спасибо за помощь!!!
Тема закрыта.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.11.2012, 23:32
Помогаю со студенческими работами здесь

как сделать так чтобы при нажатии на крестик или на кнопку Завершить выбивало подтверждающих закрытия
как сделать так чтобы при нажатии на крестик или на кнопку Завершить выбивало подтверждающих закрытия и оно работало правельно, при нажатии...

Как определить, что была нажата кнопка (крестик) закрытия формы
Как определить что была нажата кнопка закрытия формы непосредственно в событии FormClosing/FormClosed? Сейчас использую такой код, но...

Как присвоить кнопке закрытия формы (крестик) другое действие? Например, MessageBox
Добрый день)

Как убрать кнопку развернуть в заголовке окна
Как убрать кнопку развернуть в заголовке окна?

Как убрать значок Делфи (Семерку) в заголовке формы?
Как сделать, чтобы в Делфи 7 при открытии готового проекта в заголовке окна был только нужный текст без лейбла Делфи - семерки?


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Old Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru