【问题标题】:MS Access 2003 - Is there a way to run access (mde) without the access shell around the forms/reportsMS Access 2003 - 有没有办法在没有表单/报告周围的访问外壳的情况下运行访问 (mde)
【发布时间】:2010-03-27 14:19:15
【问题描述】:

所以我不确定我问的是否正确;让我解释一下:

有没有一种方法可以在没有表单/报告周围的访问 shell 的情况下运行我的 MDE?提供菜单的部分,以及小应用程序标题。我认为这是我所有访问内容所在的整体表示层形式,但我不确定。我只是想知道你是否可以摆脱它。

谢谢

【问题讨论】:

  • 您想隐藏菜单和快捷菜单吗?
  • 不不,我很抱歉....我的意思是出现在我的表单和报告周围的整个 Access 窗口。不仅仅是菜单,而是整个窗口。类似于 Visual Studio Windows 窗体项目。这样桌面上唯一出现的就是表单,而不是整个访问外壳
  • 你在“隐藏访问窗口”上搜索过吗?如果是这样,那里出现的第一个解决方案 (tek-tips.com/faqs.cfm?fid=2562) 有什么问题?
  • @David....从未见过。谢谢,这正是我想要的!

标签: windows ms-access vba


【解决方案1】:

如果您想进一步“隐藏”您的应用程序是用 access 编写的这一事实,您还可以做一些其他的事情。如果您将位图图像放在同一个文件夹中并将其命名为与数据库完全相同的名称,即“MyDatabase.mde”和“MyDatabase.bmp”,那么访问将使用它作为启动屏幕,而不是仅显示它。

这里还有一些代码可以更改每个表单上的表单标题旁边显示的图标

'place this sub in each forms "Load" event 
Private Sub Form_Load() 

SetFormIcon Me.hWnd, Left(CurrentDb.Name, Len(CurrentDb.Name) - Len(Dir(CurrentDb.Name))) & “\myicon.ico"
‘if the icon file is stored in the same directory as the db
‘or
SetFormIcon Me.hWnd, "C:\Icons\Icon1.ico" 'Location of icon file 

End Sub 

'copy below code in a new public module 
Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long 

Private Const WM_SETICON = &H80 
Private Const IMAGE_ICON = 1 
Private Const LR_LOADFROMFILE = &H10 
Private Const SM_CXSMICON As Long = 49 
Private Const SM_CYSMICON As Long = 50 

Private Declare Function LoadImage Lib "user32" Alias "LoadImageA" (ByVal hInst As Long, ByVal lpsz As String, ByVal un1 As Long, ByVal n1 As Long, ByVal n2 As Long, ByVal un2 As Long) As Long 
Private Declare Function Long, ByVal wMsg As Long, ByVal wParam As Long, LParam As Any) As Long 

Public Function SetFormIcon(hWnd As Long, strIconPath As String) As Boolean 
Dim lIcon As Long 
Dim lResult As Long 
Dim X As Long, Y As Long 

X = GetSystemMetrics(SM_CXSMICON) 
Y = GetSystemMetrics(SM_CYSMICON) 
lIcon = LoadImage(0, strIconPath, 1, X, Y, LR_LOADFROMFILE) 
lResult = SendMessage(hWnd, WM_SETICON, 0, ByVal lIcon) 
End Function

SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As 

【讨论】:

    【解决方案2】:

    这就是使用 VBA 的方式。

    Setting Start-Up Options Using VBA

    否则,请在当前数据库选项下查看允许完整菜单允许默认快捷菜单之类的内容,然后将其关闭。

    【讨论】:

    • 谢谢....认为我的问题不清楚。我正在寻找一种在运行 mde 时完全删除表单/报告周围的整个访问 shell 的方法。不仅仅是菜单。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-05
    • 2018-06-03
    • 2016-07-04
    • 1970-01-01
    • 2011-03-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多