エキスパートアドバイザー - 雑多な質問 - ページ 37

 

#オブジェクトが混在している - 開く

私はすでに数回この問題について尋ねたが、良い答えを得ることができませんでした。
そして、SEOで解決策を見つけようとしました。そして、この問題について、もっと明確に説明した上で、もう一度質問してみようと思いました(そうなるといいのですが・・・)。

そこで、コーダーやプログラマーが私の問題を簡単に理解できるように、サンプルコードを書いてみました。

注:両方のオブジェクトのパラメータは、以下のようになる可能性があります。

ObjectCreate(0,"Button",OBJ_BUTTON,0,0,0);
ObjectSetString(0,"Button",OBJPROP_TEXT,"Click -");
ObjectSetInteger(0,"Button",OBJPROP_XDISTANCE,100);
ObjectSetInteger(0,"Button",OBJPROP_YDISTANCE,20);
ObjectSetInteger(0,"Button",OBJPROP_XSIZE,80);
ObjectSetInteger(0,"Button",OBJPROP_YSIZE,30);
ObjectSetInteger(0,"Button",OBJPROP_CORNER,CORNER_RIGHT_UPPER);
ObjectSetInteger(0,"Button",OBJPROP_COLOR,clrWhite);
ObjectSetInteger(0,"Button",OBJPROP_BGCOLOR,clrGray);
ObjectSetInteger(0,"Button",OBJPROP_STATE,false);
ObjectSetInteger(0,"Button",OBJPROP_BACK,false);
ObjectSetInteger(0,"Button",OBJPROP_SELECTABLE,false);
ObjectSetInteger(0,"Button",OBJPROP_SELECTED,false);
ObjectSetInteger(0,"Button",OBJPROP_ZORDER,1);

ObjectCreate(0,"Hline",OBJ_HLINE,0,0,WindowPriceMax() - ( 40 * Point ));
ObjectSetInteger(0,"Hline",OBJPROP_COLOR,clrBlue);
ObjectSetInteger(0,"Hline",OBJPROP_BACK,false);
ObjectSetInteger(0,"Hline",OBJPROP_ZORDER,0);

#msissue - ボタン h線混在

ありがとうございました。

 
しかし、何が問題なのでしょうか?
 
Marco vd Heijden:
しかし、何が問題なのでしょうか?
ボタンオブジェクトを クリックすると、Hlineオブジェクトも選択状態になります。
 
ObjectCreate(0,"Button",OBJ_BUTTON,0,0,0);
ObjectSetString(0,"Button",OBJPROP_TEXT,"Click -");
ObjectSetInteger(0,"Button",OBJPROP_XDISTANCE,100);
ObjectSetInteger(0,"Button",OBJPROP_YDISTANCE,20);
ObjectSetInteger(0,"Button",OBJPROP_XSIZE,80);
ObjectSetInteger(0,"Button",OBJPROP_YSIZE,30);
ObjectSetInteger(0,"Button",OBJPROP_CORNER,CORNER_RIGHT_UPPER);
ObjectSetInteger(0,"Button",OBJPROP_COLOR,clrWhite);
ObjectSetInteger(0,"Button",OBJPROP_BGCOLOR,clrGray);
ObjectSetInteger(0,"Button",OBJPROP_STATE,false);
ObjectSetInteger(0,"Button",OBJPROP_BACK,false);
ObjectSetInteger(0,"Button",OBJPROP_SELECTABLE,false);
ObjectSetInteger(0,"Button",OBJPROP_SELECTED,false);
ObjectSetInteger(0,"Button",OBJPROP_ZORDER,1);

ObjectCreate(0,"Hline",OBJ_HLINE,0,0,WindowPriceMax() - ( 40 * Point ));
ObjectSetInteger(0,"Hline",OBJPROP_COLOR,clrBlue);
ObjectSetInteger(0,"Hline",OBJPROP_BACK,true);
ObjectSetInteger(0,"Hline",OBJPROP_ZORDER,0);
 
Marco vd Heijden:

それでも、Buttonオブジェクトを クリックすると、Hlineオブジェクトが選択されます。

ありがとうございました。

 

セットしたとき。

ObjectSetInteger(0,"Hline",OBJPROP_BACK,true);

線はボタンの後ろになります。

しかし、あなたの言う通り、それはまだ選択されています。

そこで、線を手動で調整する必要があるかどうかによって、追加することができます。

ObjectSetInteger(0,"Hline",OBJPROP_SELECTABLE,false);
 
Marco vd Heijden:

申し訳ありませんが、時々、" Hline "を選択する必要があります。
それは私にとって非常に重要なことです。

ボタンオブジェクトを クリックしたときに、Hlineが選択されていると非常に危険です。

 

そして、線がボタンの下から出るように、垂直スケールを少しドラッグする必要があります。

ボタンは1回クリックするだけですが、線は2回クリックするので、どうしても気になる場合は、ボタンが押された後、短時間だけ線を固定にするカウンターを開始することができます。

 
Marco vd Heijden:

ボタンは1クリックで済みますが、線は2クリック必要なので、どうしても気になる場合は、ボタンが押された後、短時間だけ 線を固定にするカウンターを起動することができます。

一度、他のサブテーマでそれについて質問したことがあるのですが、私には役に立たないと思っています。
私はアイデアを持っていますが、私はそれを行う方法を知りません - しかし、私はそれのために何かをしようとすることは確実であることを知っています。なぜなら、この方法よりも安全な方法だと思うからです。

コメントありがとうございます。

(近々、私のアイデアについて調べ始める予定です。)

 

ボタンをクリックしたときに実行されるコードに、以下のコードを記述します。

ObjectSetInteger(0,"Hline",OBJPROP_SELECTED,false);
このようにすると、ボタンをクリックしたときにその行を選択しても、自動的に選択が解除されます。