初心者の方からの質問 MQL4 MT4 MetaTrader 4 - ページ 218

 
Maxim Kuznetsov:

// задержка 500 милисекунд, годная для тестера

ミンクの中にたたずむ

 
こんばんは。フィボナッチエクステンションに 基づくエキスパートアドバイザをオープンソースコードで少なくとも1つ(インターネット上で見つけていません)見つけるのを助けてください。
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов
  • www.mql5.com
При создании графического объекта функцией ObjectCreate() необходимо указать тип создаваемого объекта, который может принимать одно из значений перечисления ENUM_OBJECT. Дальнейшие уточнения свойств созданного объекта возможно с помощью функций по работе с графическими объектами.
 

オブジェクトを理解したいのですが、MQL4のハンドブックに、ボタンを押す(押した/押さない)と絵が変わる例があります。ボタンには2つの状態があります。そこで質問なのですが、例えば3つ以上の状態を 持つボタンを作るにはどうしたらいいのでしょうか?ボタンの各状態に 独自の画像が欲しい。この機能では無理だとしたら、どのような機能を使えば目的の結果を得られるのか。

//--- установим картинки для режимов On и Off
ObjectSetString(chart_ID,name,OBJPROP_BMPFILE,0,file_on)
ObjectSetString(chart_ID,name,OBJPROP_BMPFILE,1,file_off)

//--- установим, в каком сотоянии находится метка (нажатом или отжатом)
   ObjectSetInteger(chart_ID,name,OBJPROP_STATE,state);
 
Nauris Zukas:

オブジェクトを理解したいのですが、MQL4のハンドブックに、ボタンを押す(押した/押さない)と絵が変わる例があります。ボタンには2つの状態があります。そこで質問なのですが、例えば3つ以上の状態を 持つボタンを作るにはどうしたらいいのでしょうか?ボタンの各状態に 独自の画像が欲しい。この機能でできないのであれば、どのような機能で目的の結果を出すのか?


のようなものでしょうか?プレス、ハーフプレス、ハーフリプレス?
 
Vladislav Andruschenko:

それはどのように`ですか?プレス、ハーフプレス、ハーフリプレス?

ハーフプレス :)

 
Vladislav Andruschenko:

それはどのように`ですか?プレス、ハーフプレス、ハーフリプレス?

9ポジションのスライダー)押すと薄い黄色になり、二度押しすると黄色になることに気づきました。しかし、これは標準的なボタンではありません。

 
Vladislav Andruschenko:

それはどのように`ですか?プレス、ハーフプレス、ハーフリプレス?

マジで?望ましい結果についてさらに読み進めても理解しにくいのですね。
写真をクリックするたびに、絵が変わる。例えば5枚の写真、クリックするたびにそれぞれの写真が変わる、などなど。
2枚の絵をぐるぐる変えるならOBJPROP_STATEだけでよかったのですが、2枚以上になると

 
Nauris Zukas:

そうなんですか?望ましい結果についてさらに読み進めても理解しにくいのですね。
写真をクリックするたびに、絵が変わる。例えば5枚の絵があれば、クリックするたびにそれぞれの絵が変わるなど、輪になっていきます。
2枚の絵をぐるぐる変えるならOBJPROP_STATEだけでよかったのですが、2枚以上になると

何が起こっているのか理解するのは難しいですね。みんなに全部説明しないといけないんです。
 
Nauris Zukas:
2枚の絵をぐるぐる変えるだけならOBJPROP_STATEだけでよかったのですが、2枚以上になると、

可能な解決策:複数のOBJ_BITMAP_LABELオブジェクトを 1つずつ作成する。1つ目のオブジェクトをクリックすると削除され、同じ場所に2つ目のオブジェクトが作成されます。2つ目のオブジェクトの後に、3つ目のオブジェクトが作成されます。OBJPROP_BMPFILE の両モードとも、同じ画像を読み込み、クリックの状態を追跡せず、既存のオブジェクトの名前を追跡 します。この名前で、現在のボタンの 状態がわかります。

 
Aleksei Stepanenko:

可能な解決策:複数のOBJ_BITMAP_LABELオブジェクトを 1つずつ作成する。1つ目のオブジェクトをクリックすると削除され、同じ場所に2つ目のオブジェクトが作成されます。2つ目のオブジェクトの後に、3つ目のオブジェクトが作成されます。OBJPROP_BMPFILE の両モードとも、同じ画像を読み込み、クリックの状態を追跡せず、既存のオブジェクトの名前を追跡 します。その名前で、現在のボタンの 状態がわかります。

ありがとうございます!試してみます。