金曜日, 9月 02, 2022

Visual Studio Basic_26 
短辺値から求める用紙比率値計算機

いろいろな用紙サイズを短辺値から算出するプログラムです。原理は単なる四則演算です。


画面設計はこんな感じです。Labelの順番がグチャグチャなのは、設計なしで作成した結果で特に意味はありません。 少しづつ比率を追加したのは反省しています。


ソースの
「-----------------」は区切り線なので記述の必要はありません。

青字は自動入力部分で修正の必要はありません。 黒字が入力部分です。 赤字はコメント文なので記述の必要はありません。
比率ボタンごとに計算しているのでソースは簡単ですが、勘違いミスでしばらくプチパニックでした。
------------------

  Public Class Form1

  Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

        Dim ratio As Decimal

  'Aサイズ[297 - 210

  'TextBox1がブランクならLabel4に "短辺値を入力してください"を表示。

  'TextBox1の入力値に合わせてLabel1に比率値を表示。

        If TextBox1.Text = Nothing Then

            Label4.Text = "短辺値を入力してください"

            Exit Sub

        End If

        Label4.ResetText()

        ratio = Val(TextBox1.Text) * 297 / 210

        Label1.Text = Format(ratio, "0.00")

    End Sub

------------------

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

        Dim ratio As Decimal

  'Bサイズ[257 - 182

  'TextBox1がブランクならLabel4に "短辺値を入力してください"を表示。

  'TextBox1の入力値に合わせてLabel1に比率値を表示。

        If TextBox1.Text = Nothing Then

            Label4.Text = "短辺値を入力してください"

            Exit Sub

        End If

        Label4.ResetText()

        ratio = Val(TextBox1.Text) * 257 / 182

        Label1.Text = Format(ratio, "0.00")

    End Sub

------------------

    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click

        Dim ratio As Decimal

  'レター判サイズ[279.4 - 215.9

  'TextBox1がブランクならLabel4に "短辺値を入力してください"を表示。

  'TextBox1の入力値に合わせてLabel1に比率値を表示。

        If TextBox1.Text = Nothing Then

            Label4.Text = "短辺値を入力してください"

            Exit Sub

        End If

        Label4.ResetText()

        ratio = Val(TextBox1.Text) * 279.4 / 215.9

        Label1.Text = Format(ratio, "0.00")

    End Sub

------------------

    Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click

        Dim ratio As Decimal

  'リーガルサイズ[355.6 - 215.9

  'TextBox1がブランクならLabel4に "短辺値を入力してください"を表示。

  'TextBox1の入力値に合わせてLabel1に比率値を表示。

        If TextBox1.Text = Nothing Then

            Label4.Text = "短辺値を入力してください"

            Exit Sub

        End If

        Label4.ResetText()

        ratio = Val(TextBox1.Text) * 355.6 / 215.9

        Label1.Text = Format(ratio, "0.00")

    End Sub

------------------

    Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click

        Dim ratio As Decimal

  'タブロイドサイズ[431.8 - 279.4

  'TextBox1がブランクならLabel4に "短辺値を入力してください"を表示。

  'TextBox1の入力値に合わせてLabel1に比率値を表示。

        If TextBox1.Text = Nothing Then

            Label4.Text = "短辺値を入力してください"

            Exit Sub

        End If

        Label4.ResetText()

        ratio = Val(TextBox1.Text) * 431.8 / 279.4

        Label1.Text = Format(ratio, "0.00")

    End Sub

------------------

    Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click Dim ratio As Decimal

  '菊サイズ[939 - 636

  'TextBox1がブランクならLabel4に "短辺値を入力してください"を表示。

  'TextBox1の入力値に合わせてLabel1に比率値を表示。

If TextBox1.Text = Nothing Then Label4.Text = "短辺値を入力してください" Exit Sub End If Label4.ResetText() ratio = Val(TextBox1.Text) * 939 / 636 Label1.Text = Format(ratio, "0.00") End Sub ------------------ Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
  'TextBox1、Label1、Label4をリセット TextBox1.ResetText() Label1.ResetText() Label4.ResetText() End Sub ------------------ Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click   'プログラム終了
End End Sub ------------------ Private Sub Button9_Click(sender As Object, e As EventArgs) Handles Button9.Click Dim ratio As Decimal

  'Cサイズ[324 - 229

  'TextBox1がブランクならLabel4に "短辺値を入力してください"を表示。

  'TextBox1の入力値に合わせてLabel1に比率値を表示。

If TextBox1.Text = Nothing Then Label4.Text = "短辺値を入力してください" Exit Sub End If Label4.ResetText() ratio = Val(TextBox1.Text) * 324 / 229 Label1.Text = Format(ratio, "0.00") End Sub ------------------ Private Sub Button10_Click(sender As Object, e As EventArgs) Handles Button10.Click Dim ratio As Decimal

  '四六サイズ[188- 130

  'TextBox1がブランクならLabel4に "短辺値を入力してください"を表示。

  'TextBox1の入力値に合わせてLabel1に比率値を表示。

If TextBox1.Text = Nothing Then Label4.Text = "短辺値を入力してください" Exit Sub End If Label4.ResetText() ratio = Val(TextBox1.Text) * 188 / 130 Label1.Text = Format(ratio, "0.00") End Sub ------------------ Private Sub Button11_Click(sender As Object, e As EventArgs) Handles Button11.Click Dim ratio As Decimal

  'ハトロンサイズ[1200 - 900

  'TextBox1がブランクならLabel4に "短辺値を入力してください"を表示。

  'TextBox1の入力値に合わせてLabel1に比率値を表示。

If TextBox1.Text = Nothing Then Label4.Text = "短辺値を入力してください" Exit Sub End If Label4.ResetText() ratio = Val(TextBox1.Text) * 1200 / 900 Label1.Text = Format(ratio, "0.00") End Sub ------------------ Private Sub Button12_Click(sender As Object, e As EventArgs) Handles Button12.Click Dim ratio As Decimal

  '黄金比サイズ[2:(1+sqrt(5))/2黄金比は第一貴金属比

  'TextBox1がブランクならLabel4に "短辺値を入力してください"を表示。

  'TextBox1の入力値に合わせてLabel1に比率値を表示。

If TextBox1.Text = Nothing Then Label4.Text = "短辺値を入力してください" Exit Sub End If Label4.ResetText() ratio = Val(TextBox1.Text) * ((1 + Math.Sqrt(5)) / 2) Label1.Text = Format(ratio, "0.00") End Sub ------------------ Private Sub Button13_Click(sender As Object, e As EventArgs) Handles Button13.Click Dim ratio As Decimal

  '白金比サイズ[1:sqrt(3)

  'TextBox1がブランクならLabel4に "短辺値を入力してください"を表示。

  'TextBox1の入力値に合わせてLabel1に比率値を表示。

If TextBox1.Text = Nothing Then Label4.Text = "短辺値を入力してください" Exit Sub End If Label4.ResetText() ratio = Val(TextBox1.Text) * Math.Sqrt(3) Label1.Text = Format(ratio, "0.00") End Sub ------------------ Private Sub Button14_Click(sender As Object, e As EventArgs) Handles Button14.Click Dim ratio As Decimal

  '白銀比サイズ[1:(1+sqrt(2))白銀比は第二貴金属比

  '白銀比には大和比もある[1:sqrt(2)]がここでは第二貴金属比

  'TextBox1がブランクならLabel4に "短辺値を入力してください"を表示。

  'TextBox1の入力値に合わせてLabel1に比率値を表示。

If TextBox1.Text = Nothing Then Label4.Text = "短辺値を入力してください" Exit Su End If Label4.ResetText() ratio = Val(TextBox1.Text) * (1 + Math.Sqrt(2)) Label1.Text = Format(ratio, "0.00") End Sub ------------------ Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click Dim ratio As Decimal

  '青銅比サイズ[1:(3+sqrt(13))/2青銅比は第三貴金属比

  'TextBox1がブランクならLabel4に "短辺値を入力してください"を表示。

  'TextBox1の入力値に合わせてLabel1に比率値を表示。

If TextBox1.Text = Nothing Then Label4.Text = "短辺値を入力してください" Exit Sub End If Label4.ResetText() ratio = Val(TextBox1.Text) * ((3 + Math.Sqrt(13)) / 2) Label1.Text = Format(ratio, "0.00") End Sub ------------------ Private Sub Button16_Click(sender As Object, e As EventArgs) Handles Button16.Click Dim ratio As Decimal

  '第二黄金比サイズ[1:(3+sqrt(5))/2

  'TextBox1がブランクならLabel4に "短辺値を入力してください"を表示。

  'TextBox1の入力値に合わせてLabel1に比率値を表示。

If TextBox1.Text = Nothing Then Label4.Text = "短辺値を入力してください" Exit Sub End If Label4.ResetText() ratio = Val(TextBox1.Text) * ((3 + Math.Sqrt(5)) / 2) Label1.Text = Format(ratio, "0.00") End Sub 

End Class

------------------

起動直後のパレット

短辺値を入力せずに[変換]をクリックすると「短辺値を入力してください"を表示」が表示されます。デザイン面でLabel4のプロパティでFontColorを「Red」に設定しておきます。

短辺値を入力して[黄金比]をクリックすれば上の様な表示になります。

クリックするといきなりダウンロードが始まります。
実際のプログラム完成日は2022年7月30日です。

Windows版です。