ホーム   フォーラム   FAQ
 
メインメニュー
ログイン
ユーザー名:

パスワード:


パスワード紛失

Re: 現在カーソルがパーキングしているコントロール名の取得

このトピックの投稿一覧へ

なし Re: 現在カーソルがパーキングしているコントロール名の取得

msg# 1.2.2
depth:
2
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2009-9-29 10:39 | 最終変更
null  長老   投稿数: 191
>たとえば『ここと、ここと、ここの項目にパーキングしてるときに、ズームボタンを有効にする』
この件は簡単に行う方法が無いので便乗で質問させて下さい。

ボタンの有効特性をパークしている項目に応じて切り替えるような使い方をする場合、
LastPark(0) も VarInp(0) も内部的にはリアルタイムに変わるらしいのですが、
画面の表示にはリアルタイムに反映されないと言う仕様らしいのです。

唯一、V10 のリッチクライアント版では、例えば、ボタンの有効特性に
LastPark(0)='項目1' or LastPark(0)='項目3' とか書いておけば
画面の表示もリアルタイムに変わっていたのですが(項目1と3パーク時はボタン有効、以外は無効)、
このような動作は不具合だったようで uniPaaS ではオンライン版と同様、
リアルタイムに反映されないと言う仕様になっています(泣

画面の表示を反映させるには次項目へ移動するなどの画面再描画を誘発させる
何らかのアクションかイベント実行「画面再表示」を行う必要があるそうです。

項目にパークした時に発生するイベントがあれば、hiro さんが書かれているように
コントロール名未入力のハンドラを作成し、HandledCtrl() の値でフラグ制御出来るんでしょうが、
コントロール前と同等のイベントが無いのでこれも使えず・・・
(コントロール前のハンドラでコントロール名を未入力出来ないとか・・・)

結局、このような使い方は控えるか、全ての項目コントロール前でフラグを制御して、
そのフラグをボタンの有効特性にセットするような感じにしているのですが、
項目が多いとそれだけハンドラを書くことになり、かなり面倒です。

項目数分ハンドラを用意せずに済む良い方法は無いでしょうか?
投票数:0 平均点:0.00

投稿ツリー

  条件検索へ


Copyright (C) Magic Software Japan K.K. All Rights Reserved.
個人情報保護方針 会員規約