SUPPORT
h_top333.jpg

表をつくってみよう

表をつくってみよう

 これまでで、文字と線や点を表示させることができましたので、復習として表でもつくってみようと思います。

 以下のプログラムは、例として256X64dotの表示モジュールを使用した場合について書きます。 他のdotをご使用の方も、数字を少しかえてチャレンジしてください。

2列2行の表を書く

プログラム6


Sub Start()
          Cursor 0 , 0
          Cls
          SetFont 8x16
          KanjiOn


          Line 0 , 0 , 255 , 0             '・・・①
          Line 0 , 0 , 0 , 63              '・・・①
          Line 255 , 0 , 255 , 63          '・・・①
          Line 0 , 63 , 255 , 63           '・・・①
          Line 0 , 31 , 255 , 31            '・・・①
          Line 0 , 32 , 255 , 32            '・・・①
          Line 127 , 0 , 127 , 63          '・・・①
          Line 128 , 0 , 128 , 63          '・・・①

          Cursor 4 , 1                '・・・②
          Print "おはよう"             '・・・③
          Cursor 4 , 5                 '・・・②
          Print "こんにちは"           '・・・③
          Cursor 131 , 1               '・・・②
          Print "こんばんは"           '・・・③
          Cursor 131 , 5               '・・・②
          Print "おやすみ"             '・・・③
End Sub

 プログラム6を実行してください。 下のような表示ができましたか?


 

 前回に線を描いたときは1本の線でしたが、今回は8本引きます。 しかし、6-①はLineが8回書いてあるだけなので、簡単ですよね。

 6-②はカーソルの位置を指定する命令でした。 カーソルは横は1dotづつ、縦は8dotづつ動かせますから、例えば、Cursor 4 , 1は横4dot、縦8dotずれた位置、Cursor 131 , 5は横131dot、縦40dotずれた位置にカーソルが移動します。 その後に6-③(Print)を書くことにより、カーソルが移動した位置に言葉が表示されます。

 

少し凝って書いてみよう

 プログラム6のように書いてもまったく問題はないのですが、わざと少々凝ったことをしてみましょう。

 

プログラム7


Sub Start()
          Cursor 0 , 0
          Cls
          SetFont 8x16
          KanjiOn

          For x = 1 To 2                                         '・・・①
                    Line 128 * x - 128 , 0 , 128 * x - 128 , 63           '・・・①
                    Line 128 * x - 1 , 0 , 128 * x - 1 , 63           '・・・①
                    Line 0 , 32 * x - 32 , 255 , 32 * x - 32           '・・・①
                    Line 0 , 32 * x - 1 , 255 , 32 * x - 1           '・・・①
          Next                                           '・・・①

          Cursor 4 , 1
          Print "おはよう"
          Cursor 4 , 5
          Print "こんにちは"
          Cursor 131 , 1
          P      rint "こんばんは"
          Cursor 131 , 5
          Print "おやすみ"
End Sub

 6-①を7-①のように変更してみましょう。 For ...Nextも復習です。

 7-①ならば、x = 1とx = 2がLineの式に代入されます。 そうすると6-①と同じ式になりますね。 プログラムマクロとしては異なる処理をしているのですが、結局表示は同じです。

 プログラム6は簡単にかけるので、別にFor ...Nextを使う必要はないのですが、もっと複雑なものになってくると、使わずには先に進めないような状況になってくるらしいです。 そのため、最初のうちから勉強しておいた方がよさそうです。

 前ページでも書きましたが、描画の開始・終了点が範囲を超えると正しく表示されません。 256X64dot以外の表示モジュールをお使いの方は、そのままコピー&ペーストをすると変な表示がされますのでご注意ください。 各モジュールの可能な範囲は下記の表のとおりです。

  256X16dot ⇒ 横:0~255 縦:0~15
  256X64dot ⇒ 横:0~255 縦:0~63
  384X32dot ⇒ 横:0~383 縦:0~31
  512X32dot ⇒ 横:0~511 縦:0~31

 

「*(アスタリスク)」の意味 ~計算式を使う~

 プログラム7では「*」という記号がたくさん出てきましたよね。 「*」と書くことによって、その記号の前後の数値の積を求めます。 このような、算数の計算をさせるような記号を、算術演算子といいます。

 

 実はプログラム5で出てきた「/」という記号も算術演算子で、これは商を求める演算子です。 「Macro操師」では、算術演算子は他に「+」、「-」が使えます。 それらはそれぞれ和、差を求める演算子です。


当ウェブサイトでは、お客さまによりよいサービスをご提供するため、Cookieを使用しています。
Cookieを無効にする方法を含め、当社のCookieの使用については「個人情報保護方針」をお読みください。

OK