まほうじゅで読み解く 理想郷のかたち -2ページ目

まほうじゅで読み解く 理想郷のかたち

インテリアに。コミュニケーションに。脳力増進に。最新マルチな宝石風チェス「まほうじゅ」発明者ひろのの、しあわせへのたわごと。

 

★学力Upからボケ予防まで★リアル【賢者の石】をおすすめブログ

                 

 

まほうじゅ+こぎん刺し 

 

 

 

★しあわせへご案内★宝島ライフAnalizer(解析盤)


まほうじゅPLAZA、ご案内ブログなど、まほうじゅブログの詞

子供たちが駒に向かい 視界を広げ 
火車(ひしゃ)や 勝利や 知恵までも つかもうとしている
「まほうじゅとは、おもちゃだよ。」と、ウソを言えない私、
見る間に学力が伸びるの気づいていた

部屋のオブジェが表す 「何か」 
ボケかけのママの脳も揺さぶるらしい

互いにとって、気持ちいつも探る遊び 
ちょっと、教室じゃ習えない「まほう術」

                          (Melody:久保田早紀「異邦人」)



******

 

 

 

スタイル設定には、それはそれは膨大かつ事細かな設定項目があります。

それをプログラムから動的に操作できれば、

格段に面白いことができそうですね。

 

 

*表示文字を大きくする

 

 

mygram.html <style>#box1部分に1行追加します。

 

 

#box1に追加したとわかるように、1番目に入れたんですが、

まあ、結局そう設定されるので、範囲内のどこに書いてもいいんです。

 

font-size:30px;

 

これでbox1の表示が大きくなります。

 

 

*JavaScriptで表示文字を大きくする

 

同じスタイル設定を、JavaScriptから行う方法。ちょっと注意点があります。

 

 

box2の表示を80pxに、という例。カウンター表示の数字を大きくします。

box2.style.fontSize="80px";

 

box2「の」スタイル「の」フォントサイズ設定を、こうしろと。

 

注意点とは、fontSize という書き方。<style>内ではfont-sizeだったのに。

 

この設定は計算もできるプログラムの中で書いています。

font-size って、変数がfontというのとsizeというのがあって、その引き算

という意味になってしまいます。なのでつなぎ方の工夫。

ハイフンを使わず大文字を使う文法になりました。

 

JavaScriptのプログラム中で、このようにスタイル設定の値を操作できます。

その際、ハイフンありの設定項目名の時は注意、ということです。

ハイフンが使えない代わり、ハイフンの次を大文字にする書き方を

キャメル記法 といいます。

 

はい、これからは、表示範囲のスタイル設定をJavaScriptからいじるのも

自由自在。

 

 

*プログラムで表示文操作

 

「プログラミング」を「カウンタープログラム」に、

「書いてみましょう」を「キーを押してみましょう」に書き換え。

JavaScriptプログラムからやってみましょう。

 

box1の表示する中身「innerHTML」は、HTML表記内容です。

タグ<br>も込みで行けます。

 

 

追加したのは
box1.innerHTML="カウンタープログラム<br>キーを押しましょう";

box1「の」インナーHTMLを、以下の内容にするよ、と。

 

 

 

プログラムらしくなってきました。

 

 

 

 

 

次回は「onclickイベント」

 

 

 

 

シリーズ「おうちではじめるプログラミング」として連載しています。

途中から読んでもわからない記事だと思うので

バックナンバーをご確認ください。1話から読むことをお勧めします。

 

テーマ別「プログラミング入門」

 

 

 

 

 

*********************************** 

 

 

 

 

 

 

ペタしてね
 

 

★学力Upからボケ予防まで★リアル【賢者の石】をおすすめブログ

                 

 

まほうじゅ+こぎん刺し 

 

 

 

★しあわせへご案内★宝島ライフAnalizer(解析盤)


まほうじゅPLAZA、ご案内ブログなど、まほうじゅブログの詞

子供たちが駒に向かい 視界を広げ 
火車(ひしゃ)や 勝利や 知恵までも つかもうとしている
「まほうじゅとは、おもちゃだよ。」と、ウソを言えない私、
見る間に学力が伸びるの気づいていた

部屋のオブジェが表す 「何か」 
ボケかけのママの脳も揺さぶるらしい

互いにとって、気持ちいつも探る遊び 
ちょっと、教室じゃ習えない「まほう術」

                          (Melody:久保田早紀「異邦人」)



******

 

 

 

新型肺炎ウィルスへの警戒は、

ちょっとやそっとじゃ解けそうにありません。

みなさん、観念してスティホームしていますか?

 

家の中でできることをしましょう、という情報が

ネットやテレビにたくさん集まっています。

 

その中で、寝転がりながらダイエット体操、というのがあって

それをやるには、カウンターがあったらいいのにな、と

ふと思い立ち、作成中のやつをそういうプログラムにしたろか、と。

 

*JavaScript

 

mygram.html <body>部分に「プログラム」を追加します。

</body>直前です。新たに<div id="javascript">範囲を設け、その中に

<script>~</script>の範囲を作ります。

 

 

<script>~</script>範囲に書いているのが

 

JavaScript

 

というプログラム言語です。box1、box2の表示まで各行の処理が終わったら

スクリプト(=シナリオ、プログラム)を実行する番に降りてきます。

 

c=0; パソコンの記憶域の1部に「c」と名付け使わせてもらいます。

名付けた記憶域を「変数」と呼びます。値をゼロとします。

 

window.onkeydown=presskey;

Windowsパソコンのキーが何か押されたらpresskeyをしなさい、とあります。

presskeyとは、別に定義している命令群の名前で、こういう別定義命令は

「関数」「ファンクション」などの呼び名があります。

 

function presskey(e){ ・・・ }

プログラムを定義している部分です。プログラム群の名前がpresskeyで

キーが押されたら実行される具体的な内容がここに書かれています。

(e)がなんのこっちゃかわかりませんけど、とりあえずこのまま書いてください。

eは「何が押されたか情報」です。これを使って

「何が押されたかでいろんなことをする」芸も可能ですが

ここでは、何か押されたと検知するだけを目的にしています。

c=0 の変数設定のところは実行順が来た時に行いますが、

function からの書き始めは定義です。この時に実行はしません。

合図があれば(この場合は、キー入力があった場合)発動します。

 

c=c+1; 変数cに1足した値を新たにメモリcの内容とする、ということで

変数cの値を1増やします。このように操作次第で刻々と値が変わるのが

「変数」です。

 

box2.innerHTML=c; cの値はbox2のHTML内容となります。表示内容ですね。

 

こうして、キーを押すたびにbox2の値が増えるカウンターの出来上がり。

 

また、<div id="javascript">について、スタイル設定を追加します。

 

 

追加した設定は

display:none;  表示しない

 

画面表示が出来上がってそれから、という実行順の都合上

</body>直前に置いていますが、表示したい文ではありません。

<script>タグ範囲自体、普通は表示されないのですが、念のため。

 

さて、実行してみましょう。

 

 

 

 

実はタグ記述だけでは動きやリアクションのある画面は作れません。

このJavaScriptという言語で初めて、計算して答えを表示したり、

キーを押したなどの合図で動きを起こさせたりできるのです。

 

そのため、「HTMLをプログラムとは言わない」という見解もあります。

動かす「プログラム」以前に、それに作用される「もの」を用意した感じ。

 

<div>を書いた順に表示処理するんだから、

プログラムでいいと思うんだけどね。

 

さて、寝転がりダイエットです。

30回1セットということで、

1ターンごとにとにかくキーボードにかけた指でプッシュ。

自分では回数を気にせず、時おり回数を確認するのです。

 

数字がちっちゃい、とか、いろいろあるので、直したいですね。

 

 

*JavaScript おさらい

 

JavaScriptはC言語の作りを手本にできている本格プログラム言語です。

条件分岐、繰り返し、関数定義など、各言語大差ない基本的な要領を

JavaScriptも抑えているうえ、HTMLとともにブラウザ操作が主な用途で

このようにすぐに使えることからプログラム学習に最適だ

と、私は、思います。

苦手分野は、ファイル操作。インターネット上での活躍が多く、

アクセスした先のパソコンのファイルを読み込んだりが得意だったら、

大問題になりますからね。

 

 

例題で示した、変数、関数、イベントなどの使用例は、JavaScriptの文例

という以上に、言語の種類を超えて常道パターンです。

 

<変数>

パソコンの記憶域に名前を付けてプログラムの動作に活用します。

mygram.htmlでは c=0; c=c+1;(cの内容を増やす)などと使用しました。

a=2 としたら aといえば2である。b=4 としたときに

c=a+b;d=a/b;としたら、cは6、dは0.5 になります。

変数には文字や文章を入れることもできます。

a=”こんにちは。”としたら、aを表示せよという命令では

こんにちは。 と表示します。

 

<関数>

定義しておきプログラム中の呼び出しによって実行する命令グループです。

mygram.htmlでは function presskey(e){ ・・・ }という定義を行いました。

基本的に、プログラム中の関数の使い方は、文中で関数名を書くだけです。

c=0;

presskey();←

みたいな感じで。

 

<イベント>

キー入力、マウスボタンのクリックなど、合図で発動する仕掛けです。

mygram.htmlでは window.onkeydown=presskey;

これは、画面上の区域というよりはWindowsパソコンで、キー入力あり

が検知されたら関数を実行するよ、という仕掛けを設けた部分です。

 

使えば使うほど、広い、深い、面白いのがプログラム言語です。

 

 

次回は「JavaScriptでスタイル変更」

 

 

 

 

シリーズ「おうちではじめるプログラミング」として連載しています。

バックナンバーをご確認ください。

 

テーマ別「プログラミング入門」

 

 

 

 

 

*********************************** 

 

 

 

 

 

 

ペタしてね
 

 

★学力Upからボケ予防まで★リアル【賢者の石】をおすすめブログ

                 

 

まほうじゅ+こぎん刺し 

 

 

 

★しあわせへご案内★宝島ライフAnalizer(解析盤)


まほうじゅPLAZA、ご案内ブログなど、まほうじゅブログの詞

子供たちが駒に向かい 視界を広げ 
火車(ひしゃ)や 勝利や 知恵までも つかもうとしている
「まほうじゅとは、おもちゃだよ。」と、ウソを言えない私、
見る間に学力が伸びるの気づいていた

部屋のオブジェが表す 「何か」 
ボケかけのママの脳も揺さぶるらしい

互いにとって、気持ちいつも探る遊び 
ちょっと、教室じゃ習えない「まほう術」

                          (Melody:久保田早紀「異邦人」)



******

 

 

 

mygram.html <style>部分に以下のように追加してみましょう。

 

 

追加した設定は

text-align:center;

position:absolute;

left:100px;top:50px;

 

すると、どうなるでしょう?

 

 

*表示物の位置を自在に指定する

 

シルバーの範囲が、ブラウザ画面の指示した位置に移りました。つまり

left:100px;top:50px;

左辺が、左端から100ピクセルの位置に。上辺が、上限から50ピクセルの位置に。

 

こうして、どのような位置にでも位置指定できるのです。ただし

 

position:absolute; の1文が無いとこの指定は無効です。

absoluteは「絶対」positionを絶対位置で指定の位置にする命令です。

 

今、子供向けもプログラミング学習で1番スタンダードな奴で

Scratch

って知ってますか?あれの導入で、

「右に5個移動、と指示したら猫がその通りに移動する」

とかやるんですけど、

 

左から100くらい寄れ、と命令を書くと寄る。

Scratchでもこういうプログラムでも、同じことを言ってるんです。

 

 

*中央寄せ表示する

 

「プログ・・・」文が中央に寄って表示しているのに気づきましたか?

text-align:center;

範囲中の文章を中央寄せ表示にする指定です。

 

 

*もう1個四角を描く

 

これを作ってみましょう。

 

 

プログラムはこうなります。

2つ目の表示範囲<div id="box2">を追加しました。ゼロを表示させています。

<div id="box1">の次に書くことで、それが先に描かれ、後にオレンジのが描かれる

という順で実行され、オレンジボックスは上に重ねて表示されます。


運動会などのプログラム作り以来、変わることはありません。

基本、書いてある順に実行するのがプログラムと言うものです。

なので、パソコンで取り組む以前から、誰でもプログラムとつきあってきたのです。

 

 

プログラム書きに戻りましょう。<div id="box2">のスタイル設定も追加します。

 

200×100サイズのボックスでボックスの色はオレンジ。

文章(ゼロ)右寄せ表示の指定で表示位置は左端から150ピクセル上限から200ピクセル。

 

こうして提示すると、#box2の設定を一生懸命タイプするかと思いますが、

 

コピーして値が変わった部分だけ補正した方が断然早い、と気づいていたら、そうとう賢い。

これもまたボックス型の範囲の設定で、設定項目も同じだもの。

 

実は、似た設定、似た処理をコピーして修正して、

巨大なプログラムを作ったというよりも、気が付いたらそうできていた

と言うケースは、案外あるのです。

 
大プログラム作成のコツは、コピー!
 
もう1つ。思いつき次第で拡張する。
もう1つ表示範囲を設けたい、と思ったらdivを書く。それ用のスタイルも書く。
 
企画とか設計とか、面倒くさいことを考えながら3Dゲームアプリを考えるのは
プロに任せておけばいいのです。
 

 

 

 

 

次回は「JavaScript」

 

 

 

 

シリーズ「おうちではじめるプログラミング」として連載しています。

バックナンバーをご確認ください。

 

テーマ別「プログラミング入門」

 

 

 

 

 

*********************************** 

 

 

 

 

 

 

ペタしてね
 

 

★学力Upからボケ予防まで★リアル【賢者の石】をおすすめブログ

                 

 

まほうじゅ+こぎん刺し 

 

 

 

★しあわせへご案内★宝島ライフAnalizer(解析盤)


まほうじゅPLAZA、ご案内ブログなど、まほうじゅブログの詞

子供たちが駒に向かい 視界を広げ 
火車(ひしゃ)や 勝利や 知恵までも つかもうとしている
「まほうじゅとは、おもちゃだよ。」と、ウソを言えない私、
見る間に学力が伸びるの気づいていた

部屋のオブジェが表す 「何か」 
ボケかけのママの脳も揺さぶるらしい

互いにとって、気持ちいつも探る遊び 
ちょっと、教室じゃ習えない「まほう術」

                          (Melody:久保田早紀「異邦人」)



******

 

 

 

*文章の2行目を書く

 

mygram.html <div>部分を以下のように修正してみましょう。

 

 

<br> 改行するタグです。ブレークタグと言います。

 

文章は書けるのに、試しにメモ帳に何行か書いてみて

その通りに改行しないけどなぜか、と思った人もいたのでは。

改行しなかった理由は簡単。そこで改行すべしという指示が無いから。

 

改行命令を置けば改行します。これ当たり前。

 

 

*単独タグ

多くのタグは終了タグと1組で範囲を表す、と以前に書きましたが

範囲を表す必要が無い標識もあります。

<br> という標識もその1つです。「ここで改行」とわからせればいいわけ。

 

*HTML公式フォーム

 

1番重要な単独タグはこれでしょう。

 

<doctype html>

 

プログラム記述の先頭に置いて「これはHTML文書ですよ」と示す標識。

 

実は、この標識から始まって、HTMLには公式のフォームがあります。

 

次に <html>~</html> 「この範囲、HTMLである」と続けるのです。

<style>以下をいったん少し後ろに追いやって書いてみると、

 

 

さらに<html>範囲中に<head>範囲と<body>範囲を作ります。

それぞれ、非表示の設定内容記述領域と、表示するものを書く領域です。

 

 

これが 公式なHTMLの骨格です。

どんなプログラムも、まずこれを作ります。

そして<head><body>どちらか適切な範囲内にプログラムを書き込むのです。

 

 

設定、と言えば<style>範囲。これは<head>範囲中に置きます。

<div>範囲は「プログラ・・・」と表示する内容そのもの.。<body>範囲中に置きます。

 

 

 

これでフォーマルなhtmlテキストです。どこに出しても恥ずかしくありません。

 

どこに出す、って?

 

以前に、HTMLはブラウザ上の表示を表現するプログラムだと言いましたね。

ということは、こうして作った画面は、

ホストコンピュータにアップロードすればホームページとして見れるのです。

アドレスさえ知っていれば世界中から閲覧できます。

その時、公式フォームにかなっていないと、どんな怪我をするかわかりません。

 

なので、この基本形はぜひとも蓄えておきたい。強くお勧め。

 

これは、もうホームページとして通用する画面を作っているのです。

なおかつ、動作をつければ立派なプログラムです。

 

 

 

2020年5月2日の桜

 

 

今期の冬は早く終わり、雪が早く消えて

桜は早く咲いては約散るんじゃなかろうかと思っていたのが

毎日、気温は意外と上がらなかったからねえ。

意外と、通常ペースの桜。

 

今は、通常ペースということばが何か羨ましい。

 

通常ペースなら公園に入って桜を見てるところだけど

外堀を見て我慢。その画像を見て我慢。今は辛抱の時です。

 

 

 

 

 

次回は「好きな位置に表示する」

 

 

 

 

シリーズ「おうちではじめるプログラミング」として連載しています。

バックナンバーをご確認ください。

 

テーマ別「プログラミング入門」

 

 

 

 

 

*********************************** 

 

 

 

 

 

 

ペタしてね
 

 

★学力Upからボケ予防まで★リアル【賢者の石】をおすすめブログ

                 

 

まほうじゅ+こぎん刺し 

 

 

 

★しあわせへご案内★宝島ライフAnalizer(解析盤)


まほうじゅPLAZA、ご案内ブログなど、まほうじゅブログの詞

子供たちが駒に向かい 視界を広げ 
火車(ひしゃ)や 勝利や 知恵までも つかもうとしている
「まほうじゅとは、おもちゃだよ。」と、ウソを言えない私、
見る間に学力が伸びるの気づいていた

部屋のオブジェが表す 「何か」 
ボケかけのママの脳も揺さぶるらしい

互いにとって、気持ちいつも探る遊び 
ちょっと、教室じゃ習えない「まほう術」

                          (Melody:久保田早紀「異邦人」)



******

 

 

 

プログラム趣味に1番大事なのはたぶん、「蓄積」。

実行して成功させた書き方を、とにかくため込みましょう。

似たようなことをまたやりたい時に参考にできます。

 

 

 

*文字色を変える

 

mygram.htmlを以下のように修正してみましょう。

 

 

color:rgb(0,0,250);

文字色を変える color と言う設定をくわえてみました。

background-color設定はコロンに続けて色名を書いて

「銀色で表示」できていましたが

 

微妙な色彩を調整したい

 

と思ったら、色名を指定する方法では自在にとはいきません。

 

color:rgb(0,0,250); は

発色の要素を、Red、Green、Blue に分けて指定する書き方です。

 

値が3つとも 0 だと どの色彩も発色しない=黒 です。

そのうち青の要素だけが上限(255)に近い250に設定すると

青く表示します。これを実行すると、文字が青で表示されます。

 

 

青の値が小さいほど黒に近く、暗くて濃い青になります。

同様に、(255,0,0) だと赤になります。その値が小さいほど濃い色になります。

同様に、(0,255,0) だと緑になります。その値が小さいほど濃い色になります。

 

赤と青の発色が最大だと、紫(マゼンダ)になります。

絵具で赤と青を混ぜて紫にしたことありませんか?あれと同じ。

 

赤と緑の発色が最大だと、黄色(イエロー)になります。

緑と青の発色が最大だと、青緑(シアン)になります。

 

(100,100,100)とか、各値がほぼ同じだとグレーです。

値が小さいほど黒に近く濃いグレーになり、値が大きいほど白っぽくなります。

全部の値が最大の255の時は白です。

255より大きい値を設定すると、255とみなされます。

 

もっと赤っぽくしたいと思ったら1番目の値をより大きく設定します。

紫っぽさがありすぎると思ったら1番目と3番目の値を小さめにしてみます。

 

rgb という書き方は、色を指定する全部の場面で使えます。

もちろん、background-color設定でも使えます。

色名の指定、数値での細密指定、両方記録しておくと、

どちらの書き方もある、と確認できます。これが知識の蓄積です。

 

同じ意味で青の発色を color:#0000ff; という書き方もあります。

エンジニアのプロが特に好む書き方ですけど、

「数値の16進法表現」が絡んでムダに難しくなります。

(16進法は、上限が255である理由ともちょっと関係あります。)

プロ好みということは、他の参考書ではよくこの書き方が使われます。

あらかじめ知っていたら、「何じゃこりゃ?」って面食らわなくて済むでしょ。

 

 

文字色や背景色を、いろいろ微妙な色にしてみましょう。

 

 

 

 

次回は「公式HTMLとは?」

 

 

 

 

シリーズ「おうちではじめるプログラミング」として連載しています。

バックナンバーをご確認ください。

 

テーマ別「プログラミング入門」

 

 

 

 

 

*********************************** 

 

 

 

 

 

 

ペタしてね