/// 実習G3 座標計算 プログラミング実習 目次に戻る
 back next 

プロジェクト名  実習G3マス目番号の計算

動作説明

 クリックしたマス目(40×20)の番号を表示する。

デザイン

実習G3のデザイン フォーム Form1
 Size = 316,297 (枠内300×260)
 BackgroundImage = BackImage2.gif
 
ラベル lblMasu
 Text = マス目番号

コード(プログラム)

Public Class Form1    ↓メソッドに注意(マウスのクリックで動作するメソッド)
  Private Sub Form1_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseClick
    Dim xx, yy, num As Integer
    xx = Int((e.X - 15) / 40)    ←※1 左から何列目か計算
    yy = Int((e.Y - 20) / 20)    ←※2 上から何行目か計算
    If xx < 0 Or xx >  @  Or yy < 0 Or yy >  A  Then
      lblMasu.Text = "マス目番号=範囲外です"
    Else
      num =  B  * 7 +  C 
      lblMasu.Text = "マス目番号= " & num.ToString
    End If
  End Sub
End Class

解答欄(英数字は半角で入力すること。余分な空白は入れないこと)
  @   A   B   C
   解答を入力し、[解答チェック]ボタンをクリックする。正解は   、不正解は   で表示される。

キーワード

MouseClick … マウスのボタンをクリックしたときに発生するイベント。
e.X と e.Y … マウスをクリックした座標を取得するプロパティ。

解説

 実習G2と逆の計算で座標からマス目番号を求める。

※1 x座標(e.X)から余白(15)を減算し、マス目の横幅(40)で割った商が列数を表す。
※2 y座標(e.Y)から余白(20)を減算し、マス目の高さ(20)で割った商が行数を表す。

テスト

□ フォームをクリックするとクリックしたマス目の番号が表示される。
□ マス目以外の場所をクリックすると「範囲外です」と表示される。


 back next 
/// 実習G3 座標計算 Copyright©2014 Hiroshi Masuda 

 

 

 

inserted by FC2 system