プロが教える店舗&オフィスのセキュリティ対策術

MT4(MQL4)プログラミングで動きません。教えて下さい。
下記のようなプログラムを勉強中なのですが、マウスをクリックしても何しても価格を取得してくれません。
ネットに検索すれば、下記のようなサンプルプログラムが幾つも紹介されてますが、全く動きません。

私のやりたいことは、マウスでクリックした場所の価格を取得しそれを元に水平線を描きたいのです。

ご存じの方がおられましたら、ご教授下さいませ。
宜しくお願い致します。



//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
double drop_price=WindowPriceOnDropped();
datetime drop_time=WindowTimeOnDropped();
//---- may be undefined (zero)
if(drop_time>0)
{
ObjectCreate("Dropped price line", OBJ_HLINE, 0, drop_price,0);
ObjectCreate("Dropped time line", OBJ_VLINE, 0, drop_time,0);
}
//----
return(0);
}
//+------------------------------------------------------------------+

A 回答 (2件)

何か勘違いをされているようです。


WindowPriceOnDropped/WindowTimeOnDropped は、EA または Script を、チャートに D&D(Drag&Drop) した時のその場所の座標(PricesとTime)を取得する関数ですので、ご希望のようなことはできません。
じゃあどういうときにこれらの関数を使うのかというと、例えば、D&D した価格に指値注文するような Script を組んでおく、といった使い方をします。

あと、余談ですが、

>ObjectCreate("Dropped time line", OBJ_VLINE, 0, drop_time,0);



ObjectCreate("Dropped time line", OBJ_VLINE, 0, 0, drop_time);

の間違いです。
    • good
    • 0
この回答へのお礼

早速のご回答有り難うございました。

初心者なので、余り意味が分かりません。
マウスのドラッグオン、ドロップとばかし思っておりました。いわゆる、マウスのクリック。

私がプログラムでやりたいことは、チャート上の位置をマウスでクリックし、その値が欲しいのです。

幾つか文字をメニュー代わりに配置しまして、その文字をクリックすると必要な処理がなされるようにプログラミングを行いたいのです。

その他の手段でメニューのようなものが作れれば必要ないのですが、巷によくありますMT4のアプリには、文字の内容に応じて各関数の処理をするようなものがあります。
そのようなことを行いたく、「WindowPriceOnDropped()」とか「WindowXOnDropped()」を試しておりましたが旨く動きませんでした。

厚かましいお願いですが、上記のことをやりたいと思っておりますので、お力をお貸し下さいませ。

宜しくお願い致します。

お礼日時:2010/09/12 16:32

>マウスのドラッグオン、ドロップとばかし思っておりました。

いわゆる、マウスのクリック。

Drag&Drop と、マウスのクリックはちがいます。
Drag&Drop とは、「マウスをあるアイテム上で左クリックすることでそのアイテムをつかむことができ(Drag)、左クリックしたままマウスカーソルを移動して、目的の場所で左ボタンを離す(Drop)」という操作を指します。

たとえば、提示されているソースをScriptとして保存し、ナビゲーターウィンドウでDragし、チャート上にDropすると、目的の場所に線を引くことができます。ただしそれっきりですが。。。


>その他の手段でメニューのようなものが作れれば必要ないのですが、巷によくありますMT4のアプリには、文字の内容に応じて各関数の処理をするようなものがあります

すみませんが、私はそのようなものを見たことがなく、またMAを作るのに必要ではないので、知識がありません。お力になれそうにありません。

この回答への補足

edp3142様有り難うございました。

お陰様で、MT4が思ったように動き始めました。

マウスカーソルも取得しバッチリです。
文字でメニューの様なものが作れました。

本当に有り難うございました。

又機会があれば宜しくお願い致します。

補足日時:2010/09/20 18:27
    • good
    • 0
この回答へのお礼

早速のご回答有り難うございました。

なんとか、目的の場所には水平線を引くことができました。

メニューの文字に応じて、各関数に飛んで行く方法のみが分かりません。

ネットで調べたところ、C++で組むようなのですが、あまりよく分かりません。

又色々勉強します。

この度は誠に有り難うございました。

お礼日時:2010/09/12 22:39

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!