VB のたまご

作成日: 2017/03/05, 更新日: 2017/03/05



Button

    イメージ
  •  Button は、ユーザーの意思決定を補助するコントロールとして使われることが多いです。 クリックして何らかの処理を実行させるというのが一般的な使われ方です。 とりあえずどういう風に動くのか見てみましょう。 以下サンプルです。「ButtonWindow1」という画面で作成していますが、「MainWindow」に書いても構いません。

  • スポンサーリンク


    <Window x:Class="ButtonWindow1"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
            xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
            xmlns:local="clr-namespace:z04_NormalControls"
            mc:Ignorable="d"
            Title="ButtonWindow1" Height="300" Width="400">
    
        <Grid>
    
            <StackPanel Orientation="Horizontal" Margin="10">
    
                <TextBox 
                    Name="textbox1" Text="" 
                    Width="50" Height="30" Margin="10" 
                    HorizontalContentAlignment="Center" VerticalContentAlignment="Center" />
    
                <TextBlock 
                    Text="+" VerticalAlignment="Center" Margin="10" />
                
                <TextBox 
                    Name="textbox2" Text="10"
                    Width="50" Height="30" Margin="10"
                    HorizontalContentAlignment="Center" VerticalContentAlignment="Center" />
                
                <TextBlock 
                    Text="=" VerticalAlignment="Center" Margin="10" />
                
                <TextBlock 
                    Name="textblock1" Text="0" VerticalAlignment="Center" Margin="10" />
                
                <Button 
                    Name="button1" Content="俺、計算する" Click="button1_Click"
                    Width="80" Height="30" Margin="10" />
    
            </StackPanel>
            
        </Grid>
        
    </Window>
    

  •  TextBox は入力欄コントロール, TextBlock は Label と同じように表示専用のコントロールですが、 動作が軽いということで TextBlock コントロールを使っているサンプルを多く見られます。 本サイトでも、Label よりも TextBlock を多用していますが特に意味はありません。Label でも良いと思っています。

  •  足し算アプリのサンプルです。 入力欄に数字を2つ入力してもらい、ボタンを押して足し算を行い、結果を表示します。 Button の Click イベントを使っています。

  • Public Class ButtonWindow1
    
        Private Sub button1_Click(sender As Object, e As RoutedEventArgs)
    
            Dim i1 = 0
            Dim i2 = 0
    
            If IsNumeric(Me.textbox1.Text) Then
                i1 = CInt(Me.textbox1.Text)
            End If
    
            If IsNumeric(Me.textbox2.Text) Then
                i2 = CInt(Me.textbox2.Text)
            End If
    
            Me.textblock1.Text = (i1 + i2).ToString()
    
        End Sub
    
    End Class