MetaTrader 5の次期リリースでフローティングウィンドウを採用 - ページ 2 12345678 新しいコメント Maxim Romanov 2018.07.27 06:31 #11 端末が良くなっている! Alexey Viktorov 2018.07.27 07:13 #12 Sergey Savinkin: チャートウィンドウの太い枠を縮小/非表示にして、スペースを節約することは可能ですか?これらのスクリプトで確認することができます。今、働いている。 フレームを取り外すためのコード //#property script_show_inputs #import "user32.dll" int SetWindowLongA(int hWnd,int nIndex, int dwNewLong); int GetWindowLongA(int hWnd,int nIndex); int SetWindowPos(int hWnd, int hWndInsertAfter,int X, int Y, int cx, int cy, int uFlags); int GetParent(int hWnd); int GetTopWindow(int hWnd); int GetWindow(int hWnd, int wCmd); #import #define GWL_STYLE -16 #define WS_CAPTION 0x00C00000 #define WS_BORDER 0x00800000 #define WS_SIZEBOX 0x00040000 #define WS_DLGFRAME 0x00400000 #define SWP_NOSIZE 0x0001 #define SWP_NOMOVE 0x0002 #define SWP_NOZORDER 0x0004 #define SWP_NOACTIVATE 0x0010 #define SWP_FRAMECHANGED 0x0020 #define GW_CHILD 0x0005 #define GW_HWNDNEXT 0x0002 //+------------------------------------------------------------------+ //| script program start function | //+------------------------------------------------------------------+ int OnStart() { int hChartParent = GetParent((int)ChartGetInteger(ChartID(), CHART_WINDOW_HANDLE)); int hMDIClient = GetParent(hChartParent); int hChildWindow = GetTopWindow(hMDIClient); while (hChildWindow > 0) { RemoveBorderByWindowHandle(hChildWindow); hChildWindow = GetWindow(hChildWindow, GW_HWNDNEXT); } return(0); } void RemoveBorderByWindowHandle(int hWindow) { int iNewStyle = GetWindowLongA(hWindow, GWL_STYLE) & (~(WS_BORDER | WS_DLGFRAME | WS_SIZEBOX)); if (hWindow>0 && iNewStyle>0) { SetWindowLongA(hWindow, GWL_STYLE, iNewStyle); SetWindowPos(hWindow,0, 0, 0, 0, 0, SWP_NOZORDER | SWP_NOMOVE | SWP_NOSIZE | SWP_NOACTIVATE | SWP_FRAMECHANGED); } }フレームを戻すためのコードです。 //#property script_show_inputs #import "user32.dll" int SetWindowLongA(int hWnd,int nIndex, int dwNewLong); int GetWindowLongA(int hWnd,int nIndex); int SetWindowPos(int hWnd, int hWndInsertAfter,int X, int Y, int cx, int cy, int uFlags); int GetParent(int hWnd); int GetTopWindow(int hWnd); int GetWindow(int hWnd, int wCmd); #import #define GWL_STYLE -16 #define WS_CAPTION 0x00C00000 #define WS_BORDER 0x00800000 #define WS_SIZEBOX 0x00040000 #define WS_DLGFRAME 0x00400000 #define SWP_NOSIZE 0x0001 #define SWP_NOMOVE 0x0002 #define SWP_NOZORDER 0x0004 #define SWP_NOACTIVATE 0x0010 #define SWP_FRAMECHANGED 0x0020 #define GW_CHILD 0x0005 #define GW_HWNDNEXT 0x0002 //+------------------------------------------------------------------+ //| script program start function | //+------------------------------------------------------------------+ int OnStart() { int hChartParent = GetParent((int)ChartGetInteger(ChartID(), CHART_WINDOW_HANDLE)); int hMDIClient = GetParent(hChartParent); int hChildWindow = GetTopWindow(hMDIClient); while (hChildWindow > 0) { RemoveBorderByWindowHandle(hChildWindow); hChildWindow = GetWindow(hChildWindow, GW_HWNDNEXT); } return(0); } void RemoveBorderByWindowHandle(int hWindow) { int iNewStyle = GetWindowLongA(hWindow, GWL_STYLE) | ((WS_BORDER | WS_DLGFRAME | WS_SIZEBOX)); if (hWindow>0 && iNewStyle>0) { SetWindowLongA(hWindow, GWL_STYLE, iNewStyle); SetWindowPos(hWindow,0, 0, 0, 0, 0, SWP_NOZORDER | SWP_NOMOVE | SWP_NOSIZE | SWP_NOACTIVATE | SWP_FRAMECHANGED); } } ファイル: RemoveBorders_All.mq5 2 kb RestoreBorders_All.mq5 2 kb Sergey Savinkin 2018.07.27 07:29 #13 Alexey Viktorov:これらのスクリプトで確認することができます。今、働いている。 フレームを取り外すためのコード フレームを戻すためのコードです。 ありがとうございます。しかし、これはおそらく、ターミナルを起動する たびに実行する必要があるのではないでしょうか?また、すべてのチャートに Vladislav Andruschenko 2018.07.27 07:34 #14 という朗報がありました。 特にパネルからの取引に適しています。 Alexey Viktorov 2018.07.27 07:44 #15 Sergey Savinkin:ありがとうございます。しかし、これはおそらくターミナルを起動 するたびに実行する必要があるのではないでしょうか?また、すべてのチャートにすべてのチャートにあるわけではないのは確かです。MT4用で、全ウィンドウ同時、各ウィンドウ別で持っていました。しかし、試行錯誤の結果、これらのものだけをMT5用に作り直しました。端末を再起動するときは気にしてなかったんですけどね。どういうわけか、私は複数のウィンドウを開いておくことはなく、実質的にこれらのスクリプトを使うことはないのです。 Renat Fatkhullin 2018.07.27 08:35 #16 Always on topは、おそらく完成度は高いが、透明性はないだろう。窓枠にはまだ手をつけません。 ウィンドウの状態制御は、キャンバスやオブジェクトにすべて自分で描画する場合です。 Mesaoria 2018.07.27 09:48 #17 Renat Fatkhullin:Always on topをやる可能性が高いが、透明性はない。窓枠にはとりあえず手をつけません。 ウィンドウの状態を管理するのは、キャンバスやオブジェクトにすべて自分で描画する場合です。Renatさん、素晴らしいニュースです。 MDIのように、異なる画面内でウィンドウを管理することは可能でしょうか?おそらく、Tile Horizontallyなどいろいろやることになると思います。 Renat Fatkhullin 2018.07.27 10:30 #18 Mesaoria:Renatさん、素晴らしいニュースです。 MDIのように、異なる画面内でウィンドウを管理することは可能でしょうか?水平にタイルを貼るなど。 手作業なので、自動化する予定はありません。 Alexey Volchanskiy 2018.07.27 10:34 #19 Vitaly Muzichenko:そして私はまだ17歳です :)そして、あなたは17倍もの収入を得ることになるのです )) Vitaly Muzichenko 2018.07.27 12:14 #20 Alexey Volchanskiy:そして、17倍の収入を得ることができます ))いいえ、フルスクリーンでシンボルを開くことができれば便利なだけです。今は、4つ以上のチャートを開いていると、チャートの分析が非常に不便で、それも27インチのモニターで。作業用のシンボルは15個で、市場の分析にはさらに3個のウィンドウが必要で、合計18個のウィンドウがあります。 だから、ウインドウの分離は朗報なのです 12345678 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
チャートウィンドウの太い枠を縮小/非表示にして、スペースを節約することは可能ですか?
これらのスクリプトで確認することができます。今、働いている。
フレームを取り外すためのコード
フレームを戻すためのコードです。
これらのスクリプトで確認することができます。今、働いている。
フレームを取り外すためのコード
フレームを戻すためのコードです。
ありがとうございます。しかし、これはおそらく、ターミナルを起動する たびに実行する必要があるのではないでしょうか?また、すべてのチャートに
という朗報がありました。
特にパネルからの取引に適しています。
ありがとうございます。しかし、これはおそらくターミナルを起動 するたびに実行する必要があるのではないでしょうか?また、すべてのチャートに
すべてのチャートにあるわけではないのは確かです。MT4用で、全ウィンドウ同時、各ウィンドウ別で持っていました。しかし、試行錯誤の結果、これらのものだけをMT5用に作り直しました。端末を再起動するときは気にしてなかったんですけどね。どういうわけか、私は複数のウィンドウを開いておくことはなく、実質的にこれらのスクリプトを使うことはないのです。
Always on topは、おそらく完成度は高いが、透明性はないだろう。窓枠にはまだ手をつけません。
ウィンドウの状態制御は、キャンバスやオブジェクトにすべて自分で描画する場合です。
Always on topをやる可能性が高いが、透明性はない。窓枠にはとりあえず手をつけません。
ウィンドウの状態を管理するのは、キャンバスやオブジェクトにすべて自分で描画する場合です。
Renatさん、素晴らしいニュースです。
MDIのように、異なる画面内でウィンドウを管理することは可能でしょうか?おそらく、Tile Horizontallyなどいろいろやることになると思います。
Renatさん、素晴らしいニュースです。
MDIのように、異なる画面内でウィンドウを管理することは可能でしょうか?水平にタイルを貼るなど。
そして私はまだ17歳です :)
そして、あなたは17倍もの収入を得ることになるのです ))
そして、17倍の収入を得ることができます ))
いいえ、フルスクリーンでシンボルを開くことができれば便利なだけです。今は、4つ以上のチャートを開いていると、チャートの分析が非常に不便で、それも27インチのモニターで。作業用のシンボルは15個で、市場の分析にはさらに3個のウィンドウが必要で、合計18個のウィンドウがあります。
だから、ウインドウの分離は朗報なのです