Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1034 / 2272 ツリー ←次へ | 前へ→

【8936】Accessタイトルバーのxボタン無効化 rino 07/1/5(金) 15:54 質問[未読]
【9012】Re:Accessタイトルバーのxボタン無効化 kohji 07/1/19(金) 10:06 回答[未読]
【9036】Re:Accessタイトルバーのxボタン無効化 rino 07/1/23(火) 13:12 お礼[未読]
【9049】Re:Accessタイトルバーのxボタン無効化 かめ 07/1/30(火) 18:46 質問[未読]
【9063】Re:Accessタイトルバーのxボタン無効化 07/1/31(水) 16:20 発言[未読]
【9081】Re:Accessタイトルバーのxボタン無効化 かめ 07/2/2(金) 11:15 お礼[未読]

【8936】Accessタイトルバーのxボタン無効化
質問  rino  - 07/1/5(金) 15:54 -

引用なし
パスワード
   Access本体の右上の閉じるの[x]ボタン"だけ"を無効にしたいのですが、方法がわかりません。出来ないのでしょうか。

全3つのボタン、最小化と最大化のボタンの無効化の方法は以下を指定するという方法で見つけられたのですが。
Const WS_SYSMENU = &H80000   : 全てのボタン
Const WS_MINIMIZEBOX = &H20000 : 最小化ボタンのみ
Const WS_MAXIMIZEBOX = &H10000 : 最大化ボタン

よろしくお願いいたします。

【9012】Re:Accessタイトルバーのxボタン無効化
回答  kohji  - 07/1/19(金) 10:06 -

引用なし
パスワード
   rino さん こんにちは

以下で Accessの閉じるボタンの無効化ができました
参考にしてください

Option Compare Database
Option Explicit

Private Declare Function GetSystemMenu Lib "user32" (ByVal hWnd As Long, ByVal fRever As Long) As Long
Private Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Long, ByVal uItem As Long, ByVal fuFlags As Long) As Long
Private Declare Function DrawMenuBar Lib "user32" (ByVal hWnd As Long) As Long

Private Const MF_BYCOMMAND = &H0&
Private Const SC_SIZE = &HF000
Private Const SC_MAXIMIZE = &HF030
Private Const SC_CLOSE = &HF060
Private Const SC_RESTORE = &HF120

Public Function SetAccWinStyle()
  Dim hWnd As Long

  hWnd = GetSystemMenu(hWndAccessApp, 0)
  RemoveMenu hWnd, SC_CLOSE, MF_BYCOMMAND
  DrawMenuBar hWndAccessApp
End Function

【9036】Re:Accessタイトルバーのxボタン無効化
お礼  rino  - 07/1/23(火) 13:12 -

引用なし
パスワード
   ありがとうございました!できました。

【9049】Re:Accessタイトルバーのxボタン無効化
質問  かめ  - 07/1/30(火) 18:46 -

引用なし
パスワード
   ▼kohji さん:
>rino さん こんにちは
>
>以下で Accessの閉じるボタンの無効化ができました
>参考にしてください
>
>Option Compare Database
>Option Explicit
>
>Private Declare Function GetSystemMenu Lib "user32" (ByVal hWnd As Long, ByVal fRever As Long) As Long
>Private Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Long, ByVal uItem As Long, ByVal fuFlags As Long) As Long
>Private Declare Function DrawMenuBar Lib "user32" (ByVal hWnd As Long) As Long
>
>Private Const MF_BYCOMMAND = &H0&
>Private Const SC_SIZE = &HF000
>Private Const SC_MAXIMIZE = &HF030
>Private Const SC_CLOSE = &HF060
>Private Const SC_RESTORE = &HF120
>
>Public Function SetAccWinStyle()
>  Dim hWnd As Long
>
>  hWnd = GetSystemMenu(hWndAccessApp, 0)
>  RemoveMenu hWnd, SC_CLOSE, MF_BYCOMMAND
>  DrawMenuBar hWndAccessApp
>End Function

すみません。このコードをどこに記入すればよいのでしょうか。
教えてください。よろしくお願いします。

【9063】Re:Accessタイトルバーのxボタン無効化
発言    - 07/1/31(水) 16:20 -

引用なし
パスワード
   こんにちわ。雅です。

参考になりますか?
miyabi.la.coocan.jp/technic/index.php?ID=1&Category=1&Topic=5

でわ。

【9081】Re:Accessタイトルバーのxボタン無効化
お礼  かめ  - 07/2/2(金) 11:15 -

引用なし
パスワード
   ▼雅 さん:
>こんにちわ。雅です。
>
>参考になりますか?
>miyabi.la.coocan.jp/technic/index.php?ID=1&Category=1&Topic=5
>
>でわ。

雅さんありがとうございました。

私はVBA初心者で、APIの知識がありませんので

APIの定義場所とか・・・

無理でした。

1034 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078201
(SS)C-BOARD v3.8 is Free