Excel VBA質問箱 IV

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

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


54960 / 76738 ←次へ | 前へ→

【26561】最大・最小のボタンを無効にしたい
質問  ぱくぱく  - 05/7/10(日) 1:49 -

引用なし
パスワード
   OfficeXP DeveloperでCOMアドインの作成にチャレンジして
いるのですが、ユーザーフォームで困っています。

ユーザーフォームを作成すると最大・最小ボタンが自動的についていて、
サイズ変更も可能なものになっているのですが、これを解除したいのです。

「かずんち!」さんのHPを参考にまずは[x]閉じるボタンの削除から
やってみたのですが、デバックモードでは上手く行くいっても、DLL
にしてインストールすると全然ダメでした。

アドインの機能にはあまり影響ないのですが、好ましくないのでどうかお知恵
を拝借させてください。どうか宜しくお願い致します。

--UserForm--
Private Sub CommandButton1_Click()
 Dim hwnd As Long
 Dim MySetWin As Long
 Dim Ret As Long

 hwnd = FindWindow("ThunderDFrame", Me.Caption)
 MySetWin = GetWindowLong(hwnd, -16&)
 If CommandButton1.Caption = "閉じるボタンを非表示" Then
  Ret = SetWindowLong(hwnd, -16&, MySetWin And (Not &H80000))
  CommandButton1.Caption = "閉じるボタンを表示"
 Else
  Ret = SetWindowLong(hwnd, -16&, MySetWin Or &H80000)
  CommandButton1.Caption = "閉じるボタンを非表示"
 End If
 Ret = DrawMenuBar(hwnd)
 
 Label1.Caption = hwnd   '←デバックでは値をとってるがDLLだと0
 Label2.Caption = MySetWin '←デバックでは値をとってるがDLLだと0
End Sub

--標準モジュール--
Option Explicit

Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
  (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
  (ByVal hwnd As Long, ByVal nIndex As Long) As Long

Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
  (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As Long

Declare Function SetWindowPos Lib "user32" _
  (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, _
    ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, _
      ByVal wFlags As Long) As Long

Declare Sub ReleaseCapture Lib "user32" ()

Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
  (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, _
    lParam As Any) As Long
0 hits

【26561】最大・最小のボタンを無効にしたい ぱくぱく 05/7/10(日) 1:49 質問
【26573】Re:最大・最小のボタンを無効にしたい bykin 05/7/10(日) 20:09 回答
【26655】Re:最大・最小のボタンを無効にしたい ぱくぱく 05/7/13(水) 0:56 お礼

54960 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free