アイコンをクリックして出るサイズ変更

解決


  2003-12-24 04:29:35  No: 110904

アプリケーションの左に表示されているアイコンをクリックしてでる
サイズ変更(S)を無効にする方法を教えて下さい。
VB6.0です。


魔界の仮面弁士  2003-12-24 08:54:42  No: 110905

フォームのBorderStyleプロパティを変更してみるとか。


いな  2003-12-24 10:15:07  No: 110906

えっと
--標準モジュールに張り付け
Public Declare Function DeleteMenu Lib "USER32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
Public Declare Function GetSystemMenu Lib "USER32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
Public Declare Function DrawMenuBar Lib "USER32" (ByVal hwnd As Long) As Long
Public Const SC_SIZE = &HF000          '「サイズ変更」

Public Sub EnabledMenu(nHandle As Long, Flag As String)

    Dim lpString As String  'システムメニューのラベル
    Dim Ret As Long         '戻り値
    Dim nLeng As Long       '文字列の長さ
    Dim hMen As Long        'システムメニューのハンドル
   
   'バッファを確保する
   lpString = String(250, Chr(0))
   nLeng = Len(lpString)
       
   'システムメニューのハンドルを確保
   hMen = GetSystemMenu(nHandle, 1)
   'システムメニューのラベルを取得
   Ret = GetMenuString(hMen, Flag, lpString, nLeng, MF_ENABLED)
   'メニューの属性を変更する
   Ret = ModifyMenu(hMen, Flag, MF_ENABLED, 0, lpString)
   '描画(変更を反映)
   Ret = DrawMenuBar(nHandle)

End Sub

Public Sub Delete(nHandle As Long, Flag As String)
  
  Dim hMen As Long       'システムメニューのハンドル
  Dim Ret As Long        '戻り値

  'システムメニューのハンドルを確保
  hMen = GetSystemMenu(nHandle, 0)
  'システムメニューの項目を削除する
  Ret = DeleteMenu(hMen, Flag, MF_BYCOMMAND)
  '描画(変更を反映)
  Ret = DrawMenuBar(nHandle)

End Sub

--こっちはフォームに張り付け(ボタン一個用意して)
Private Sub Command1_Click()
    Call Delete(hwnd, SC_SIZE)
End Sub

とやりたいとか?


  2003-12-24 10:21:53  No: 110907

>魔界の仮面弁士さん

そんな簡単な事でできたんですね。
BorderStyleを固定にしてしまうと自動的にMinButtonの値がリセットされしまっていて、できないと思い込んでしまっていました。
あとから変えればよかったんですね。

>いなさん

長々と
ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加