精华内容
下载资源
问答
  • VBA 屏蔽窗口的“关闭按钮

    千次阅读 2018-12-07 10:50:59
    插入窗体,输入代码如下: Option Explicit ...'---此模块演示了禁用窗体关闭按钮--- '**************************************** '以下声明API函数 #If Win64 Then '64位 '查找窗口 Private Declare PtrS...

    插入窗体,输入代码如下:

    Option Explicit
    '****************************************
    '---此模块演示了禁用窗体关闭按钮---
    '****************************************
    '以下声明API函数
    #If Win64 Then '64位
        '查找窗口
        Private Declare PtrSafe Function FindWindow _
            Lib "user32" _
            Alias "FindWindowA" ( _
                ByVal lpClassName As String, _
                ByVal lpWindowName As String) _
        As LongPtr
        '取得窗体系统菜单
        Private Declare PtrSafe Function GetSystemMenu _
            Lib "user32" ( _
                ByVal hwnd As LongPtr, _
                ByVal bRevert As Long) _
        As LongPtr
        '删除菜单项
        Private Declare PtrSafe Function DeleteMenu _
            Lib "user32" ( _
                ByVal hMenu As LongPtr, _
                ByVal nPosition As Long, _
                ByVal wFlags As Long) _
        As Long
        '重绘窗体标题栏
        Private Declare PtrSafe Function DrawMenuBar _
            Lib "user32" ( _
                ByVal hwnd As LongPtr) _
        As Long
    #Else '32位
        '查找窗口
        Private Declare Function FindWindow _
            Lib "User32" _
            Alias "FindWindowA" ( _
                ByVal lpClassName As String, _
                ByVal lpWindowName As String) _
        As Long
        '取得窗体系统菜单
        Private Declare Function GetSystemMenu _
            Lib "User32" ( _
                ByVal Hwnd As Long, _
                ByVal bRevert As Long) _
        As Long
        '删除菜单项
        Private Declare Function DeleteMenu _
            Lib "User32" ( _
                ByVal hMenu As Long, _
                ByVal nPosition As Long, _
                ByVal wFlags As Long) _
        As Long
        '重绘窗体标题栏
        Private Declare Function DrawMenuBar _
            Lib "User32" ( _
                ByVal Hwnd As Long) _
        As Long
    #End If
    
    '以下定义常数
    Private Const MF_BYCOMMAND = &H0&
    Private Const SC_CLOSE = &HF060
    '以下下定义变量
    #If Win64 Then '64位
        Private FHwnd As LongPtr
        Private hMenu As LongPtr
    #Else
        Private FHwnd As Long
        Private hMenu As Long
    #End If
    
    ''关闭按钮点击
    'Private Sub BtCancel_Click()
    '    Unload Me
    'End Sub
    ''恢复按钮点击
    'Private Sub BtResume_Click()
    '    '恢复原菜单
    '    hMenu = GetSystemMenu(FHwnd, 1)
    '    '重绘窗体标题栏
    '    DrawMenuBar FHwnd
    'End Sub
    '**************************************
    '---------------主程序-----------------
    '**************************************
    Private Sub UserForm_Initialize()
        '查找窗口句柄
        FHwnd = FindWindow("ThunderDFrame", Me.Caption)
        '取得窗体系统菜单
        hMenu = GetSystemMenu(FHwnd, 0)
        '删除系统菜单中关闭菜单
        DeleteMenu hMenu, SC_CLOSE, MF_BYCOMMAND
        '重绘窗体标题栏
        DrawMenuBar FHwnd
    End Sub
    
    
    
    展开全文
  • VBA禁用窗体关闭按钮

    千次阅读 2010-08-08 23:17:35
    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _ (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Private Declare Func...
    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
                                           (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Private Declare Function DrawMenuBar Lib "user32" (ByVal myHwnd As Long) As Long
    Private Declare Function DeleteMenu Lib "user32" _
                                        (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
    Private Declare Function GetSystemMenu Lib "user32" _
                                           (ByVal myHwnd As Long, ByVal bRevert As Long) As Long
    Private Sub UserForm_Initialize()
        Dim myHwnd As Long
        Dim hMenu As Long
        Dim myRc As Long
        Dim myClassName As String
        Dim SC_CLOSE As Long
        SC_CLOSE = &HF060
        myClassName = "ThunderDFrame"
        myHwnd = FindWindow(myClassName, Me.Caption)
        hMenu = GetSystemMenu(myHwnd, 0&)
        myRc = DeleteMenu(hMenu, SC_CLOSE, MF_BYCOMMAND)
        myRc = DrawMenuBar(myHwnd)
    End Sub 

     

    展开全文
  • VBA窗体默认只有一个关闭按钮,没有最大化和最小化按钮,下面的代码可以方便的为窗体增加最大、最小化按钮,让窗口使用更方便。 调用方法 窗体最大最小化 Me 窗体最大化 Me 函数代码 '窗体的最大最小化 Public ...

    给VBA窗体增加最大化、最小化窗体按钮


    VBA窗体默认只有一个关闭按钮,没有最大化和最小化按钮,下面的代码可以方便的为窗体增加最大、最小化按钮,让窗口使用更方便。

    调用方法

    窗体最大最小化 Me
    窗体最大化 Me
    

    函数代码

    '窗体的最大最小化
    Public Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
    Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
    Public Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
    Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    
    Public Const GWL_STYLE = (-16)
    Public Const WS_MAXIMIZEBOX = &H10000
    Public Const WS_MINIMIZEBOX = &H20000
    Public Const WS_THICKFRAME = &H40000
    Public Const SW_MAXIMIZE = 3
    Public Const SW_MINIMIZE = 6
    Public Const SW_NORMAL = 1
    
    '设置屏幕,0=X,1=Y
    Public Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
    
    Public Sub 窗体最大最小化(窗体 As Object)
       Dim hWndForm As Long, MyType As String
       Dim iStyle As Long
       hWndForm = FindWindow("ThunderDFrame", 窗体.Caption) '取得窗口句柄
       iStyle = GetWindowLong(hWndForm, GWL_STYLE)          '取得窗口样式
       iStyle = iStyle Or WS_THICKFRAME                     '重新设置窗口样式
       iStyle = iStyle Or WS_MINIMIZEBOX                    '添加最小化按钮
       iStyle = iStyle Or WS_MAXIMIZEBOX                    '添加最大化按钮
       SetWindowLong hWndForm, GWL_STYLE, iStyle            '应用样式
    End Sub
    
    Public Sub 窗体最大化(窗体 As Object)
       Dim hWndForm As Long, MyType As String
       Dim iStyle As Long
       hWndForm = FindWindow("ThunderDFrame", 窗体.Caption) '取得窗口句柄
       iStyle = GetWindowLong(hWndForm, GWL_STYLE)          '取得窗口样式
       iStyle = iStyle Or WS_THICKFRAME                     '重新设置窗口样式
       'iStyle = iStyle Or WS_MINIMIZEBOX                    '添加最小化按钮
       iStyle = iStyle Or WS_MAXIMIZEBOX                    '添加最大化按钮
       SetWindowLong hWndForm, GWL_STYLE, iStyle            '应用样式
    End Sub
    

    窗体例子

    在这里插入图片描述
    ——专注办公软件的二次开发及培训,你有问题,我有思路!
    ——微博、微信、CSDN同号:w_dexu
    ——转载请注明出处!

    微信二维码扫码加微信

    展开全文
  • 该例子实现了用vb实现隐藏窗体关闭按钮
  • VBA打开与关闭窗体的函数

    万次阅读 2018-05-23 17:13:40
    打开与关闭窗体的函数将一些常用命令写成函数,以简化您的程序如关闭窗体指令可将之写成以下形式放在模块中Function strCloseForm(strFormName As String) As String On Error GoTo strCloseForm_Err DoCmd.Close ...
    打开与关闭窗体的函数
    
    将一些常用命令写成函数,以简化您的程序

    如关闭窗体指令可将之写成以下形式放在模块中

    Function strCloseForm(strFormName As String) As String 
    On Error GoTo strCloseForm_Err    

      DoCmd.Close acForm, strFormName 

    strCloseForm_Exit: 
     Exit Function 


    strCloseForm_Err: 
     MsgBox Error$ 
     Resume strCloseForm_Exit 

    End Function

    调用方法:关闭本窗体 strCloseForm(Me.Name)
         关闭其它窗体 strCloseForm("FormName") 
    展开全文
  • 窗体上的按钮美化

    2014-08-21 15:44:48
    包含窗体上的关闭,最小化等的窗体按钮美化,让窗体更美观
  • vb.net窗体关闭按钮触发事件

    千次阅读 2017-09-13 21:08:59
    Private Sub Form1_FormClosed( ByVal sender As ..."按钮切换总次数:" & num_button_all) logDemo.LogWriter(logDemo.LogTime & Space( 4 ) & "循环切换总次数:" & num_all) End Sub
  • VBA研究】如何防止用户关闭窗体

    万次阅读 2016-01-18 16:45:19
    VBA开发中经常用到窗体,这样界面可以做的漂亮一点,我们甚至可以关闭Excel应用窗口,只保留我们自己的窗口,只需要启动时增加关闭应用显示语句。虽然Excel应用窗口不显示,但不影响工作表的使用,依然可以在工作表...
  • 如何建立窗体,并通过窗体向该表内添加订单。 序号 姓名 科室 级别 身份 职称 受聘专业 性别 出生年月 年龄 参工时间 工作年限 入院时间 入院年限 职务 等级 ...
  • vba窗体

    2017-06-19 08:38:00
    Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) '让窗体关闭按钮失效 If CloseMode <> 1 Then Cancel = 1 '禁用窗体右上角的“×” End If End Sub 转载于:...
  • 一种使userform的右上角关闭按钮失效的方法 Private Sub UserForm_queryclose(cancel As Integer, closemode As Integer) If closemode = 0 Then cancel = True End Sub
  • [分享]vba窗体添加最大化最小化按钮,并且可以运行时调整大小[复制链接] <!-- .pcb {margin-right:0} --> 网上很多资料并没有区分vb和vba,vb窗体的borderstyle属性可以设置为可调,但vba...
  • VBA窗体和控件初接触(1):

    千次阅读 2020-03-05 15:52:51
    1 窗体 form 1.1创建窗体 form (默认名:userform) 和插入模块一样,插入用户窗体即可 1.2 如何运行/显示 窗体? 1.2.1 显示窗体的代码方法 据说,单写一句 userform1.show 也是可以的,因为VBE会自动先 load ...
  • 时 间:2017-12-03 13:22:58作 者:摘 要:利用VBA禁用或启用Access主程序的关闭按钮。正 文:在利用ACCESS进行程序开发时,有时为了避免用户随意将程序关闭,需要临时禁用主程序窗口的关闭按钮,我们可以利用下面的...
  • 在利用api引用excel到窗体的事件中,有时需要将小窗体按钮“最小化,最大化,关闭”隐藏起来
  • VBA 用户窗体的认识

    千次阅读 2020-08-18 21:19:49
    今天学的是VBA用户窗体~可算到这里来,有点以前大学学VB的味道了 一、插入新的用户窗体 插入用户窗体很简单啦,在VBE的工程下右击选择插入——用户窗体就可以了。 如果下面这个工具箱关闭了,可以在菜单栏的...
  • Excel VBA(08)窗体和控件

    千次阅读 2020-04-29 16:36:58
    3、关闭窗体 代码关闭是 unload testform方法 4、显示设置 窗体标题:caption 背景色:backcolor 背景图片:picture,代码里面可以使用loadpicture()方法进行加载 属性窗口里面可以查看 5、位置大小 to...
  • ActiveWindow.Close'关闭当前显示文件 sDir = Dir Wend End If End Sub ┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳ 16、自动打开excle中用户窗体和隐藏VBA中...
  • 窗体对象的显示与关闭 窗体对象的装载与显示 窗体对象的卸载与隐藏 窗体的显示模式 窗体是Excel VBA中提供的一种窗口对象。它属于工作簿对象(Workbook)中VB工程对象(VBProject)下的VB组件集合(VBComponents...
  • vb之窗体关闭事件

    万次阅读 2014-11-29 19:12:10
    当一个 MDIForm 对象关闭时,QueryUnload 事件先在MDI 窗体发生,然后在所有 MDI 子窗体中发生。如果没有窗体取消 QueryUnload 事件,该 Unload 事件首先发生在所有其它窗体中,然后再发生在 MDI 窗体中。当一...
  • 本章主要内容:窗体,控件,小结。
  • VBA 用户窗体的认识(二)

    千次阅读 2020-08-19 23:24:04
    今天继续讲用户窗体啦~ 一、控件事件 昨天通过小例子,认识了按钮的点击事件(CommandButton1_Click),除此之外,还有部分控件常用事件。添加完控件后,双击一下,在上面下拉就可以查看到事件啦。 1.、...
  • DefauIt和CanceI按钮 提高单元格隐藏的速度 自制浮动工具栏 动态显示与隐藏窗体 题 如图所示,该表为某单位员工档案。现希望制作一个包含有文本框的浮动工具栏,当在文本框中输入字符并按【Enter】键后,对该...
  • 题 使用窗体制作登录界面,实现...在工作簿的Open事件中添加显示窗体的代码,并将Excel程序对象的Visible属性设置为False,以隐藏Excel程序,当窗体关闭时,再将该属性设置为True。 步骤1 将Sheet2作为存储用户名...
  • 添加VBA控件按钮及操作提示框

    万次阅读 2018-09-18 14:47:58
    在Excel文件中,为了实现更加自动化或者称为人机交互式的操作,很多人是不喜欢直接在visualbasic编辑器里点击运行按钮来执行程序,在编辑器里操作更像是...这里就将要说的就是,怎样添加按钮和编辑其属性。操作如下...
  • Dim sht As Worksheet For Each sht In Worksheets If sht.Name  ActiveSheet.Name Then sht.Delete End If Next End Sub 解决办法: 添加DisplayAlerts属性为FALSE,可以关闭程序运行中是否显示警告...
  • 如图所示,该表为某公司工资表与员工档案表,当查看工资表时,希望能够在双击员工姓名时,在员工档案表中查询该员工的基本信息,并临时创建一个窗体显示该员工信息。 月份 工作地区 部门 姓名 基本...
  • 一、禁用关闭按钮 先认识一下QueryClose 关闭前执行事件: Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) 这个事件是在用户窗体关闭之前发生。 第一个参数Cancel :默认是0,除了...
  • VBA自学应用(2)——制作简单的数据录入窗口

    万次阅读 多人点赞 2019-12-29 19:24:50
    m) = grr(i, j) m = m + 1 Next ActiveCell.Offset(1).Select m = 0 Next End If End If '取消选中 Cells(Rows.Count, "B").End(3).Offset(1).Select End Sub 这里可以使用小技巧取消窗口自带的关闭按钮事件,找到...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,093
精华内容 437
关键字:

vba窗体关闭按钮

友情链接: 2.rar