NonSoft

大きいフォントのMsgBox(VB6/VB.NET/C#.NET)


 ダウンロード

メッセージボックス(MessageBox/MsgBox)のフォントサイズ変更や表示位置変更をするライブラリ

ダウンロード  画面イメージ  使用例(VB6)  使用例(VB.NET)  使用例(C#.NET) 
====================================================================
【タイトル     】大きいフォントのMsgBox(VB6/VB.NET/C#.NET)
【Version      】2.0.0.4
【ファイル     】NonMsgBox.zip
【ファイルの中身  】NonMsgVb6.dll、NonMsgNet.dll、ReadMe.txt
【動作確認     】Windows8/Windows7/XP/2000
【必要ソフト    】VB6ランタイム(VB6版)
【必要ソフト    】Microsoft .NET Framework Version 2.0(.NET版)
【ソフト種別    】フリーソフト(寄付歓迎) Ver2.0.0.1以降フリー
【作者/著作権者  】のん
【作者への連絡先  】http://nonsoft.la.coocan.jp/
【最近の主な変更  】VBScriptやEXCEL VBAでの動作確認
====================================================================
1.はじめに
  本プログラムをダウンロード頂きまして誠にありがとうございます。
  本プログラムは、VB6のメッセージボックス(MsgBox)とVB.NET/C#.NETの
  メッセージボックス(MessageBox)をカスタマイズして使用するためのラ
  イブラリ(DLL) です。メッセージのフォントやボタンのフォントを変更
  して表示出来ます。また、オーナーフォームの中央にメッセージを表示
  する事が出来ます。フォントの属性としては太字/斜体/取消線/下線 を
  指定する事が出来ます。

  MsgBoxが他の画面に比べ小さすぎるとお困りの方に有用なライブラリだ
  と思います。サンプルアプリケーションのソースコードを同梱していま
  すので、すぐにご試用頂けると思います。

  標準のメッセージボックスをそのまま使用しフォントサイズを変更しま
  すですので、プログラムを簡単に置き換え出来ます。また、標準のメッ
  セージボックスと本プログラムのメッセージボックスを切替可能です。
  ※VB6の場合のプログラム変更方法
   (1)カレントフォルダにNonMsgVb6.dllをコピー
   (2)同梱の標準モジュールを一つ追加
   (3)NonMsgVb6.dllの初期処理を一行追加
   (4)MsgBoxと言う記述をMsgBoxPlusに変更
  ※VB.NETやC#.NETの場合のプログラム変更方法
   (1)NonMsgNet.dllの参照設定
   (2)同梱のクラスを一つ追加
   (3)NonMsgNet.dllの初期処理を一行追加

  (注意)
  .NET版のMessageBoxのMessageBoxOptionsには対応していません。
  太字や斜体のメッセージは右端の文字が切れてしまう事がありますので
  その場合は、空白を追加するなどの調整が必要になります。

2.インストール方法/アンインストール方法
  本プログラムはインストール操作が必要ありません。
  アンインストール操作も必要ありませんので、本プログラム一式を削除
  してください。

  NonMsgVb6.dllを使用する場合はVB6がインストールされている必要があ
  ります。NonMsgNet.dllを使用する場合はMicrosoft .NET Framework Ve
  rsion 2.0以上がインストールされている必要があります。

  -------------------------------------------------------------------------------------
  ※VS2010(Microsoft .NET Framework Version 4.0)版は次のURLからダウンロード出来ます。
  VS2010(Microsoft .NET Framework Version 4.0)版のダウンロード
  -------------------------------------------------------------------------------------

3.ご使用方法
  サンプルアプリケーションのソースコードを同梱していますので参考に
  してください。

4.著作権・ライセンス
  本プログラムの全ての著作権は「のん」が所有しています。
  本プログラムを転載する場合は著作権所有者の許可が必要となります。
  (NonSoftの紹介リンクは問題ありませんので宜しくお願いします)
  著作権所有者が許可したサイトでのみダウンロードが可能となります。
  再配布は禁止させて頂きます。商用利用についての制限はありません。

  本プログラムはフリーライセンス(寄付歓迎)です。
  本プログラムを長期間使用される場合は、寄付やホームページ紹介等、
  してください。寄付はこちらでお願いします。
  http://nonsoft.la.coocan.jp/kifu.html

5.免責事項
  本プログラムが原因による損害・問題に対し一切の責任を負いません。
  ご利用者の責任の範囲内でお使いください。

6.作者への問合せについて
  作者への問合せはメールのみとさせて頂きます。問合せ内容によっては
  回答出来ない場合もございますので予めご了承願います。また、作者不
  在時または問い合わせ数が多い場合など、回答に日数がかかる場合がご
  ざいますので予めご了承願います。

<画面イメージ>
大きいフォントのMsgBox(VB6/VB.NET/C#.NET)の画面イメージ
<使用例(VB6)>
Private Sub Form_Load()
    NonMsgNet_Init
End Sub

Private Sub Command1_Click(Index As Integer)
    MsgBoxPlus "メッセージボックス(MsgBox)", vbYesNoCancel + vbCritical + vbMsgBoxHelpButton, "タイトル"
End Sub

' MsgBoxオブジェクト
Public NonMsgVb6 As Object

' 関数名    : NonMsgNet_Init
' 返り値    : 無し
' 引き数    : intMsgFontSize(i) : メッセージのフォントサイズ
'        : intBtnFontSize(i) : ボタンのフォントサイズ
' 機能説明  : 大きいフォントのMsgBox(VB6)の初期化
' 備考      :
Public Function NonMsgNet_Init() As Boolean
    On Error Resume Next
    ' NonMsgVb6.dllの存在チェック
    ChDir App.Path
    If CreateObject("NonMsgVb6.MsgBoxClass") Is Nothing Then
        If Len(Dir("NonMsgVb6.dll")) <> 0 Then
            ' NonMsgVb6.dllのレジストリ登録
            Shell "regsvr32 /s NonMsgVb6.dll", vbHide
        Else
            ' NonMsgVb6.dllをSampleAp.exeと同じフォルダに置いてください。
            MsgBox _
            "NonMsgVb6.dllが見つかりませんでした。" & vbCrLf & vbCrLf & _
            "NonMsgVb6.dllを" & vbCrLf & "[" & App.Path & "]" & vbCrLf & _
            "に置いてください。"
            End
        End If
    End If
    ' オブジェクト生成
    Set NonMsgVb6 = CreateObject("NonMsgVb6.MsgBoxClass")
    
    ' メッセージフォント名("MS Pゴシック","MS P明朝","MS ゴシック","MS 明朝")
    NonMsgVb6.MsgFontName = "MS Pゴシック"
    ' メッセージフォントサイズ
    NonMsgVb6.MsgFontSize = 20
    ' メッセージフォント太文字
    NonMsgVb6.MsgFontBold = False
    ' メッセージフォント斜体
    NonMsgVb6.MsgFontItalic = False
    ' メッセージフォント取消線
    NonMsgVb6.MsgFontStrikethru = False
    ' メッセージフォント下線
    NonMsgVb6.MsgFontUnderline = False
    ' メッセージ幅微調整1(0.9〜(1.02)〜1.1)
    NonMsgVb6.MsgWidthP1 = 1.02
    ' メッセージ幅微調整2(-50〜(+5.0)〜+50)
    NonMsgVb6.MsgWidthP2 = 5
    ' メッセージ高微調整1(0.9〜(1.02)〜1.1)
    NonMsgVb6.MsgHeightP1 = 1.02
    ' メッセージ高微調整2(-50〜(+5.0)〜+50)
    NonMsgVb6.MsgHeightP2 = 5

    ' ボタンフォント名("MS Pゴシック","MS P明朝","MS ゴシック","MS 明朝")
    NonMsgVb6.BtnFontName = "MS Pゴシック"
    ' ボタンフォントサイズ
    NonMsgVb6.BtnFontSize = 20
    ' ボタンフォント太文字
    NonMsgVb6.BtnFontBold = False
    ' ボタンフォント斜体
    NonMsgVb6.BtnFontItalic = False
    ' ボタンフォント取消線
    NonMsgVb6.BtnFontStrikethru = False
    ' ボタンフォント下線
    NonMsgVb6.BtnFontUnderline = False
    ' ボタン幅微調整1(0.9〜(1.02)〜1.1)
    NonMsgVb6.BtnWidthP1 = 1.02
    ' ボタン幅微調整2(-50〜(+5.0)〜+50)
    NonMsgVb6.BtnWidthP2 = 5
    ' ボタン高微調整1(0.9〜(1.02)〜1.1)
    NonMsgVb6.BtnHeightP1 = 1.02
    ' ボタン高微調整2(-50〜(+5.0)〜+50)
    NonMsgVb6.BtnHeightP2 = 5

    ' メッセージボックス表示位置(CenterScree=False,CenterParen=True)
    NonMsgVb6.StartPosition = False

    ' NonMsgNet有効
    NonMsgVb6.Enable = True
    NonMsgNet_Init = NonMsgVb6.Enable
End Function

' 関数名    : MsgBoxPlus
' 返り値    : MsgBoxと同じ
' 引き数    : MsgBoxと同じ
' 機能説明  : 大きいフォントのMsgBox(VB6)を表示する
' 備考      :
Public Function MsgBoxPlus( _
        Prompt As String, _
        Optional Buttons As VbMsgBoxStyle = vbOKOnly, _
        Optional Title As String = "", _
        Optional HelpFile, _
        Optional Context) As VbMsgBoxResult
    On Error Resume Next

    MsgBoxPlus = NonMsgVb6.MsgBoxPlus( _
        Prompt, Buttons, Title, HelpFile, Context)
End Function

<使用例(VB.NET)>
Public Class Form1
    ' NonMsgNet初期化
    Dim blnNonMsgNet As Boolean = MessageBox.NonMsgNet_Init()

    Private Sub Button1_Click( _
        ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        MessageBox.Show("メッセージボックス(MessageBox)", "タイトル", MessageBoxButtons.YesNoCancel)
    End Sub
End Class

Public Class MessageBox
    Inherits NonMsgNet.MsgBoxClass

    Public Shared Function NonMsgNet_Init() As Boolean
        ' シェアウェア用ライセンスキー(未使用)
        NonMsgNet.MsgBoxClass.LicenseKey = "ここにライセンスキーを設定してください"

        ' メッセージフォント名("MS Pゴシック","MS P明朝","MS ゴシック","MS 明朝")
        NonMsgNet.MsgBoxClass.MsgFontName = "MS Pゴシック"
        ' メッセージフォントサイズ
        NonMsgNet.MsgBoxClass.MsgFontSize = 20
        ' メッセージフォント太文字
        NonMsgNet.MsgBoxClass.MsgFontBold = False
        ' メッセージフォント斜体
        NonMsgNet.MsgBoxClass.MsgFontItalic = False
        ' メッセージフォント取消線
        NonMsgNet.MsgBoxClass.MsgFontStrikethru = False
        ' メッセージフォント下線
        NonMsgNet.MsgBoxClass.MsgFontUnderline = False
        ' メッセージ幅微調整1(0.9〜(1.02)〜1.1)
        NonMsgNet.MsgBoxClass.MsgWidthP1 = 1.02
        ' メッセージ幅微調整2(-50〜(+5.0)〜+50)
        NonMsgNet.MsgBoxClass.MsgWidthP2 = 5.0
        ' メッセージ高微調整1(0.9〜(1.02)〜1.1)
        NonMsgNet.MsgBoxClass.MsgHeightP1 = 1.02
        ' メッセージ高微調整2(-50〜(+5.0)〜+50)
        NonMsgNet.MsgBoxClass.MsgHeightP2 = 5.0

        ' ボタンフォント名("MS Pゴシック","MS P明朝","MS ゴシック","MS 明朝")
        NonMsgNet.MsgBoxClass.BtnFontName = "MS Pゴシック"
        ' ボタンフォントサイズ
        NonMsgNet.MsgBoxClass.BtnFontSize = 20
        ' ボタンフォント太文字
        NonMsgNet.MsgBoxClass.BtnFontBold = False
        ' ボタンフォント斜体
        NonMsgNet.MsgBoxClass.BtnFontItalic = False
        ' ボタンフォント取消線
        NonMsgNet.MsgBoxClass.BtnFontStrikethru = False
        ' ボタンフォント下線
        NonMsgNet.MsgBoxClass.BtnFontUnderline = False
        ' ボタン幅微調整1(0.9〜(1.02)〜1.1)
        NonMsgNet.MsgBoxClass.BtnWidthP1 = 1.02
        ' ボタン幅微調整2(-50〜(+5.0)〜+50)
        NonMsgNet.MsgBoxClass.BtnWidthP2 = 5.0
        ' ボタン高微調整1(0.9〜(1.02)〜1.1)
        NonMsgNet.MsgBoxClass.BtnHeightP1 = 1.02
        ' ボタン高微調整2(-50〜(+5.0)〜+50)
        NonMsgNet.MsgBoxClass.BtnHeightP2 = 5.0

        ' メッセージボックス表示位置(CenterScree=False,CenterParen=True)
        NonMsgNet.MsgBoxClass.StartPosition = False

        ' NonMsgNet有効
        NonMsgNet.MsgBoxClass.Enable = True
        Return NonMsgNet.MsgBoxClass.Enable
    End Function
End Class

<使用例(C#.NET)>
public partial class Form1 : Form
{
    // NonMsgNet初期化
    Boolean blnNonMsgNet = MessageBox.NonMsgNet_Init();

    private void Button1_Click(object sender, EventArgs e)
    {
        MessageBox.Show("メッセージボックス(MessageBox)", "タイトル", 
            MessageBoxButtons.YesNoCancel);
    }
}

class MessageBox : NonMsgNet.MsgBoxClass
{
    public static Boolean NonMsgNet_Init()
    {
        // シェアウェア用ライセンスキー(未使用)
        NonMsgNet.MsgBoxClass.LicenseKey = "ここにライセンスキーを設定してください";

        // メッセージフォント名("MS Pゴシック","MS P明朝","MS ゴシック","MS 明朝")
        NonMsgNet.MsgBoxClass.MsgFontName = "MS Pゴシック";
        // メッセージフォントサイズ
        NonMsgNet.MsgBoxClass.MsgFontSize = 20;
        // メッセージフォント太文字
        NonMsgNet.MsgBoxClass.MsgFontBold = false;
        // メッセージフォント斜体
        NonMsgNet.MsgBoxClass.MsgFontItalic = false;
        // メッセージフォント取消線
        NonMsgNet.MsgBoxClass.MsgFontStrikethru = false;
        // メッセージフォント下線
        NonMsgNet.MsgBoxClass.MsgFontUnderline = false;
        // メッセージ幅微調整1(0.9〜(1.02)〜1.1)
        NonMsgNet.MsgBoxClass.MsgWidthP1 = 1.02;
        // メッセージ幅微調整2(-50〜(+5.0)〜+50)
        NonMsgNet.MsgBoxClass.MsgWidthP2 = 5.0;
        // メッセージ高微調整1(0.9〜(1.02)〜1.1)
        NonMsgNet.MsgBoxClass.MsgHeightP1 = 1.02;
        // メッセージ高微調整2(-50〜(+5.0)〜+50)
        NonMsgNet.MsgBoxClass.MsgHeightP2 = 5.0;

        // ボタンフォント名("MS Pゴシック","MS P明朝","MS ゴシック","MS 明朝")
        NonMsgNet.MsgBoxClass.BtnFontName = "MS Pゴシック";
        // ボタンフォントサイズ
        NonMsgNet.MsgBoxClass.BtnFontSize = 20;
        // ボタンフォント太文字
        NonMsgNet.MsgBoxClass.BtnFontBold = false;
        // ボタンフォント斜体
        NonMsgNet.MsgBoxClass.BtnFontItalic = false;
        // ボタンフォント取消線
        NonMsgNet.MsgBoxClass.BtnFontStrikethru = false;
        // ボタンフォント下線
        NonMsgNet.MsgBoxClass.BtnFontUnderline = false;
        // ボタン幅微調整1(0.9〜(1.02)〜1.1)
        NonMsgNet.MsgBoxClass.BtnWidthP1 = 1.02;
        // ボタン幅微調整2(-50〜(+5.0)〜+50)
        NonMsgNet.MsgBoxClass.BtnWidthP2 = 5.0;
        // ボタン高微調整1(0.9〜(1.02)〜1.1)
        NonMsgNet.MsgBoxClass.BtnHeightP1 = 1.02;
        // ボタン高微調整2(-50〜(+5.0)〜+50)
        NonMsgNet.MsgBoxClass.BtnHeightP2 = 5.0;

        // メッセージボックス表示位置(CenterScree=False,CenterParen=True)
        NonMsgNet.MsgBoxClass.StartPosition = false;

        // NonMsgNet有効
        NonMsgNet.MsgBoxClass.Enable = true;
        return NonMsgNet.MsgBoxClass.Enable;
    }
}