Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 23.01.2018
Сообщений: 101

Доступность крестика (закрытие формы)

26.02.2018, 16:10. Показов 1661. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток.
Есть код, который скрывает крестик (закрытие формы)

VB.NET
1
2
3
4
5
6
7
8
9
 Protected Overrides ReadOnly Property CreateParams() As CreateParams
        Get
            Dim cp As CreateParams = MyBase.CreateParams
            Const CS_DBLCLKS As Int32 = &H8
            Const CS_NOCLOSE As Int32 = &H200
            cp.ClassStyle = CS_DBLCLKS Or CS_NOCLOSE
            Return cp
        End Get
    End Property
как сделать что бы при нажатии на кнопку крестик был доступен, при нажатии на другую кнопку, не доступен?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.02.2018, 16:10
Ответы с готовыми решениями:

Отменить закрытие формы
Всем доброго времени суток. Хочу отменить закрытие формы. то есть при нажатии на кнопку закрыть, или Alt +F4 программа не закрывалась. ...

Не работает плавное закрытие формы
Добрый вечер, подскажите в чём проблема? Private Sub Timer2_Tick(sender As Object, e As EventArgs) Handles Timer2.Tick ...

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

1
Лень — мое второе и
 Аватар для Orlangur
3228 / 2416 / 687
Регистрация: 28.11.2014
Сообщений: 3,601
Записей в блоге: 3
26.02.2018, 17:16
Лучший ответ Сообщение было отмечено a_lligator как решение

Решение

a_lligator,
VB.NET
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
34
35
36
37
38
39
40
41
Public Class Form1
 
    Public Property CloseEnabled() As Boolean
        Get
            Return mCloseEnabled
        End Get
        Set(ByVal value As Boolean)
            If value <> mCloseEnabled Then
                mCloseEnabled = value
                setSystemMenu()
            End If
        End Set
    End Property
    Private mCloseEnabled As Boolean = True
 
    Protected Overrides Sub OnHandleCreated(ByVal e As System.EventArgs)
        MyBase.OnHandleCreated(e)
        setSystemMenu()
    End Sub
 
    Private Sub setSystemMenu()
        Dim menu As IntPtr = GetSystemMenu(Me.Handle, False)
        Dim enable As Integer
        If Not mCloseEnabled Then enable = 1
        EnableMenuItem(menu, SC_CLOSE, enable)
    End Sub
 
    '' P/Invoke 
    Private Const SC_CLOSE As Integer = &HF060
    Private Declare Function GetSystemMenu Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal revert As Boolean) As IntPtr
    Private Declare Function EnableMenuItem Lib "user32.dll" (ByVal hMenu As IntPtr, ByVal IDEnableItem As Integer, ByVal wEnable As Integer) As Integer
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        mCloseEnabled = False
        setSystemMenu()
    End Sub
 
    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        mCloseEnabled = True
        setSystemMenu()
    End Sub
End Class
5
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.02.2018, 17:16
Помогаю со студенческими работами здесь

Как отменить закрытие формы в отдельной процедуре
Есть две процедуры: одна при закрытии формы, другая с MsgBox-ом. Вот первая: Private Sub Form1_FormClosing(sender As Object, e As...

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

Отменить закрытие формы на крестик но закрыть на пользовательскую кнопку
Поиском искал решение вопроса, не нашел, вернее все описанные варианты почему-то отрабатывают не как хотелось бы... Мне необходимо...

Многократное открытие и закрытие формы (Доступ к ликвидированному объекту невозможен)
Доброго времени всем, прошу помощи (не нашел подходящего ответа в поиске). Есть некая форма Form1 в которой после нажатия кнопки (в...

Как можно обработать закрытие userform юзером по нажатию крестика в правом верхнем углу?
Подскажите, как можно обработать закрытие userform юзером по нажатию крестика в правом верхнем углу? Где это ловится? Большое спасибо.


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru