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

■13844 / 3階層)  クリックスライド入力
□投稿者/ ONnoji -(2023/07/07(Fri) 10:04:32)
    2023/07/07(Fri) 20:34:21 編集(投稿者)
    2023/07/07(Fri) 13:02:14 編集(投稿者)

    拙速で作成したサンプルだったので、気に入らないところがありました。
    フォームをそのまま変更せず、イベント処理だけをちょっとだけ改訂しました。

    ■ドラッグで時間を.kev

    <プロシージャの一覧>

    名札  メイン
    └ cmdリセットClick
      ├ prc背景色初期化
      └ prcマウスイベント初期化

    famTxt::マウスインアウト

    famTxt::マウス左ダウン
    └ prc背景色初期化

    famTxt::マウス左アップ

    cmdリセットClick
    ├ prc背景色初期化
    └ prcマウスイベント初期化

    prcマウスイベント初期化

    prc背景色初期化


    <イベント処理の内容> ※コピペで利用できます

    名札  メイン
     変数宣言 局所,文字列{ &mFormObjectName, &workString }
     変数宣言 局所,文字列{ &mFamilyObjectName }
     変数宣言 局所,整数 { &mOnMouseDownMode }

     メソッド呼び出し オブジェクト取得( 0,&workString )
     メソッド呼び出し &workString.親オブジェクト取得( &mFormObjectName )

     &mFamilyObjectName = "famTxt"

     手続き実行 cmdリセットClick( )


    手続き定義開始 famTxt::マウスインアウト(長整数 &フラグ,長整数 &明細番号)

     トレース出力 &this, "  ", _&フラグ, "  ", #cond( &フラグ, "in", 1, "out" ), "  マウスインアウト"

     if ( &フラグ )

      オブジェクト操作 &this{ 背景色 = "水色" }

     end

    手続き定義終了

    手続き定義開始 famTxt::マウス左ダウン(長整数 &マウス位置[2],長整数 &明細番号,長整数 &フラグ,参照 長整数 &処理中止)

     トレース出力 &this, "  ", _&フラグ, "  マウス左ダウン"
     オブジェクト操作 &mFamilyObjectName{ マウスインアウト = 1 }
     オブジェクト操作 &mFamilyObjectName{ マウス左アップ = 1 }
     &mOnMouseDownMode = 1

     手続き実行 prc背景色初期化( )
     オブジェクト操作 &this{ 背景色 = "水色" }

    手続き定義終了

    手続き定義開始 famTxt::マウス左アップ(長整数 &マウス位置[2],長整数 &明細番号,長整数 &フラグ)

     トレース出力 &this, "  ", _&フラグ, "  マウス左アップ"
     オブジェクト操作 &mFamilyObjectName{ マウスインアウト = 0 }
     オブジェクト操作 &mFamilyObjectName{ マウス左アップ = 0 }
     &mOnMouseDownMode = 0

    手続き定義終了

    手続き定義開始 cmdリセットClick( )

     手続き実行 prc背景色初期化( )
     手続き実行 prcマウスイベント初期化( )

    手続き定義終了

    手続き定義開始 prcマウスイベント初期化( )

     オブジェクト操作 &mFamilyObjectName{ マウスインアウト = 0 }
     オブジェクト操作 &mFamilyObjectName{ マウス左ダウン = 1 }
     &mOnMouseDownMode = 0

    手続き定義終了

    手続き定義開始 prc背景色初期化( )
     変数宣言 自動,文字列{ &objectName }
     変数宣言 自動,整数 { &i, &loop, &step = 1 }

     ** txt00 〜 txt23
     &loop = 23
     繰り返し &i = 0, &loop, &step

      &objectName = "txt" + #str( &i, 2 )
      **トレース出力 &i, "  ", _&objectName

      オブジェクト操作 &objectName{ 背景色 = "白" }
     繰り返し終了

    手続き定義終了


    p.s.

    なお、当サンプルは[オブジェクトの背景色]の色付けを[マウス左ダウン]と[マウスインアウト]のインの時に行っています。
    これは簡便な方法です。
    ちゃんと行うには[マウス移動]を使いマウスの位置を読み取って、左右に移動した分に相当する範囲の色付けが必要です。
    しかし、こうすると急に複雑になるので当サンプルでは採用していません。

    これは、マウスドラッグ(またはドラッグ&ドロップ)のキモを知っていただきたいという趣旨からの簡便方法です。
    ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
    重要な点は、[マウス左ダウン]イベントでドラッグが始まり、[マウス左アップ]イベントでドラッグが終わるということです。
    ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
    この始まりと終わりの区間で、必要とされるイベントを動的にオン/オフするというのがお決まり事です。
    ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
    と、まあ本格的にやろうとすると大変なのでありました。(^^ゞ

    ちなみに、ドラッグ&ドロップの例の解説は以下の拙作webページに掲載しています。
    こちら
     ↓
    桐の釣魚大全のトップ > フォームアプリケーション教書 第1部
    16.5 マウス左ダウン/マウス移動/マウス左アップで[ドラッグ&ドロップ]
    http://silicon7565.html.xdomain.jp/guide/guide_Part1.htm#section16-5


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

返信無し
 
前の記事(元になった記事) 次の記事(この記事の返信)
上記関連ツリー

Nomal クリックスライド入力 / 尾形 (23/07/06(Thu) 05:44) #13836
Nomal Re[1]: クリックスライド入力 / 篤姫 (23/07/06(Thu) 09:07) #13837
│└Nomal Re[2]: クリックスライド入力 / 尾形 (23/07/06(Thu) 10:45) #13838 解決済み!
Nomal Re[1]: クリックスライド入力 / ONnoji (23/07/06(Thu) 11:45) #13839
│├Nomal Re[2]: クリックスライド入力 / 尾形 (23/07/06(Thu) 13:37) #13840
││└Nomal クリックスライド入力 / ONnoji (23/07/07(Fri) 10:04) #13844 ←Now
│└Nomal Re[2]: クリックスライド入力 / 尾形 (23/07/06(Thu) 17:26) #13841
│  └Nomal Re[3]: クリックスライド入力 / ONnoji (23/07/06(Thu) 18:23) #13842
Nomal Re[1]: クリックスライド入力 / ONnoji (23/07/08(Sat) 16:48) #13848
  └Nomal Re[2]: クリックスライド入力 / ONnoji (23/07/08(Sat) 16:54) #13849
    └Nomal Re[3]: クリックスライド入力 / 尾形 (23/07/08(Sat) 19:50) #13850
      └Nomal Re[4]: クリックスライド入力 / ONnoji (23/07/08(Sat) 20:21) #13851
        └Nomal Re[5]: クリックスライド入力 / 尾形 (23/08/08(Tue) 14:27) #13895
          └Nomal Re[6]: クリックスライド入力 / ONnoji (23/08/08(Tue) 18:33) #13896
            ├Nomal Re[7]: クリックスライド入力 / 尾形 (23/08/09(Wed) 04:17) #13897
            └Nomal Re[7]: クリックスライド入力 / 尾形 (23/09/02(Sat) 07:55) #13934

All 上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信

Mode/  Pass/

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

- Child Tree -
- Antispam Version -