(現在 過去ログ8 を表示中)

HOME HELP 新規作成 新着記事 トピック表示 ファイル一覧 検索 過去ログ

[ 最新記事及び返信フォームをトピックトップへ ]

■1120 / inTopicNo.1)  電球のスイッチ
  
□投稿者/ たゆー -(2016/04/17(Sun) 15:49:39)

    昔から、階段などで使用されてる、スイッチ。どこでつけても、どこで消しても
    利用出来る・・・どのような構造になってるか興味があったが、何気なく
    ネットを見てたら紹介されてました。ここに紹介しておきます

    ・ちなみに、イベントはもっと簡単に、整理できると思うのですが・・・
    改良された方はご紹介ください

switch.zip
/36KB
引用返信 [メール受信/OFF] 削除キー/
■1121 / inTopicNo.2)  Re[1]: 電球のスイッチ
□投稿者/ ONnoji -(2016/04/18(Mon) 10:28:19)
    No1120に返信(たゆーさんの記事)
    > ネットを見てたら紹介されてました。ここに紹介しておきます

    なるほど、三路スイッチと四路スイッチというんですね。面白いですね。
引用返信 [メール受信/OFF] 削除キー/
■1122 / inTopicNo.3)  Re[2]: 電球のスイッチ
□投稿者/ たゆー -(2016/04/19(Tue) 12:31:01)
    > なるほど、三路スイッチと四路スイッチというんですね。面白いですね。

    そうですね、以外と簡単な構造なんですね、

    ところで、まだ拘ってます。
    > ちなみに、イベントはもっと簡単に、整理できると思うのですが・・・
    前回のイベントの行数は「222行」でしたが今回は「113行」になりました
    しかし、「変数の値を変数で、取得や設定」等、まだまだですね
    それから、オブジェクト操作が計算式でできればもっと少ない行数で
    できそうです。


switch2.zip
/12KB
引用返信 [メール受信/OFF] 削除キー/
■1135 / inTopicNo.4)  Re[3]: 電球のスイッチ
□投稿者/ ONnoji -(2016/04/28(Thu) 15:59:23)
    > ・ちなみに、イベントはもっと簡単に、整理できると思うのですが・・・
    > 改良された方はご紹介ください

    改良というわけではありません。

    私流の方法で作ってみました。

    プログラムの都合でピクチャと直線の一部は、オブジェクト名を変更してあります。

    なお、今回の拙作では、私にしては非常に珍しく変数名をなるべく日本語にしてあります。

    ご高覧よろしくお願いいたします。


switch_ONnoji.zip
/39KB
引用返信 [メール受信/OFF] 削除キー/
■1136 / inTopicNo.5)  Re[4]: 電球のスイッチ
□投稿者/ たゆー -(2016/04/30(Sat) 10:27:30)
    さっそく拝見させていただきました。さすがですね

    ・例えば、いままで、配列変数に値代入するとき
    &曜日 = { "日","月","火","水","木","金","土" }
    このように違う値を代入するとき、ループ・繰り返しを利用せず
    値代入していましたが、同じ値を設定するとき「 { } 」この形式は
    利用してなかったですね

    ・&コンマ = #jis( #hex("2C") )
    この利用はわかりやすいですね。いままで「 +","+ 」このように書いてましたので
    今後参考にさせていただきます。

    ・「 = 」の使い方で、1行に複数利用
    当然、引数や条件文では当たり前ですが「138行目」の
    > &m回路状態Dim[ &回路ID ] = ( &mスイッチ状態Dim[2] = &mスイッチ状態Dim[3] ) /* 回路2の状態 1:close(閉) 0:open(開) */
    このような使い方はしたことがないですね。

    他にも、
    > if ( &m回路状態Dim[ &回路ID ] )
    心配性なので、このような書き方でなく
    if ( &m回路状態Dim[ &回路ID ] = 0 )
    if ( &m回路状態Dim[ &回路ID ] = 1 ) のように、判定値を必ず記載しています


    今回は、図やレイアウトが事前にありましたので、多少制限もあったかと思いますが
    0から作成されたらまた違ってたかも知れませんネ

    まだ、他も参考にさせていただきます。

引用返信 [メール受信/OFF] 削除キー/
■1137 / inTopicNo.6)  Re[5]: 電球のスイッチ
□投稿者/ ONnoji -(2016/04/30(Sat) 18:21:51)
    2016/04/30(Sat) 18:40:21 編集(投稿者)
    2016/04/30(Sat) 18:35:49 編集(投稿者)
    2016/04/30(Sat) 18:35:14 編集(投稿者)
    2016/04/30(Sat) 18:32:31 編集(投稿者)
    2016/04/30(Sat) 18:26:26 編集(投稿者)

    No1136に返信(たゆーさんの記事)
    > ・「 = 」の使い方で、1行に複数利用
    > 当然、引数や条件文では当たり前ですが「138行目」の
    > > &m回路状態Dim[ &回路ID ] = ( &mスイッチ状態Dim[2] = &mスイッチ状態Dim[3] ) /* 回路2の状態 1:close(閉) 0:open(開) */
    > このような使い方はしたことがないですね。

    これは単なる代入文です。
    イコール記号(=)を1行に複数利用したということではありません。
    以下に説明いたします。

    &m回路状態Dim[ &回路ID ] = ( &mスイッチ状態Dim[2] = &mスイッチ状態Dim[3] )

    これは、

    &m回路状態Dim[ &回路ID ] = 値 と等価です。

    つまり

    &整数型変数 = 値 です。

    ただし、値の部分が条件式になっているというところが珍しいと思います。

    条件式なので、以下の条件式と同じだと考えてください。

    ・if ( &mスイッチ状態Dim[2] = &mスイッチ状態Dim[3] )

    ・繰り返し ( &mスイッチ状態Dim[2] = &mスイッチ状態Dim[3] )

    ・#条件選択( &mスイッチ状態Dim[2] = &mスイッチ状態Dim[3], … )


    そこで(常用する人は非常に少ないですが)、

    条件式を(エラーにならないように括弧で囲んで)、数値系の変数に代入すると

    偽( False )の場合には、ゼロ( 0 )になります。

    真( True )の場合には、イチ( 1 )になります。

    ということで、

    &m回路状態Dim[ &回路ID ] = ( &mスイッチ状態Dim[2] = &mスイッチ状態Dim[3] )

    の結果としては、ゼロ( 0 )かイチ( 1 )が代入されるということですよ。


    詳しくは、こちらを是非ご一読ください。
     ↓
    コラム3 論理値のこと|桐のイベント道場
    http://www.geocities.jp/siliconvalley_bay_7565/column03.htm

    なお Visual Basic では、False は 0 になり、True は -1

    【引用】Boolean Data Type (Visual Basic)
    https://msdn.microsoft.com/ja-jp/library/wts33hb3.aspx

    Visual Basic で数値型の値をブール型 (Boolean) に変換すると、0 は False になり、その他の値はすべて True になります。
    Visual Basic でブール型 (Boolean) の値を数値型に変換すると、False は 0 になり、True は -1 になります。

引用返信 [メール受信/OFF] 削除キー/
■1138 / inTopicNo.7)  Re[6]: 電球のスイッチ
□投稿者/ ONnoji -(2016/04/30(Sat) 18:58:36)
    2016/04/30(Sat) 18:59:02 編集(投稿者)

    No1136に返信(たゆーさんの記事)
    >> ・&コンマ = #jis( #hex("2C") )
    > この利用はわかりやすいですね。いままで「 +","+ 」このように書いてましたので
    > 今後参考にさせていただきます。

    リテラル文字(直接指定した文字という意味)は、非常に間違え易いですし、さらに変更しにくいです。

    というわけで、私の場合には、二重引用符やコンマなどは、変数に代入して利用しています。

    なお、半角の記号が多いので、16進数のアスキーコードを使っています。

    16進数を使うか否かは、好みの問題だと思います。

    <参考例>

     変数宣言 自動,文字列{ &fileFilter, &expression, &WQ = #jis( #hex("22") ), &comma = #jis( #hex("2C") ) }

     &expression = "&mOpenFileName" + &comma \
      + &WQ + "桐のファイルを開く" +&WQ + &comma \
      + &WQ + &WQ + &comma \
      + &WQ + &fileFilter + &WQ + &comma \
      + &WQ + &WQ + &comma + &WQ + "開く" + &WQ


    > 今回は、図やレイアウトが事前にありましたので、多少制限もあったかと思いますが
    > 0から作成されたらまた違ってたかも知れませんネ

    いえいえ、非常に面白かったですよ。

    フォームのオブジェクトの配置を楽しく拝見させていただきました。

    よろしければ、またコラボさせてくださいませ。m(__)m


引用返信 [メール受信/OFF] 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Mode/  Pass/

HOME HELP 新規作成 新着記事 トピック表示 ファイル一覧 検索 過去ログ

- Child Tree -
- Antispam Version -