2021.01.1817:57:52.598 MacdSampleCFrames (Si-3.21,M2) CElement::CreateCanvas > Не удалось создать холст для рисования элемента (CButton): 40162021.01.1817:57:52.598 MacdSampleCFrames (Si-3.21,M2) CProgram::OnTesterInitEvent > Could not create the GUI!
//--- Определим цвет для линииcolor clr=m_back_color;
if(m_tabs.GetButtonPointer(m_selected_tab).IsLocked()) // これだ!
clr=m_tabs.GetButtonPointer(m_selected_tab).BackColorLocked();
//--- Рисуем линию
m_canvas.Line(x1,y1,x2,y2,::ColorToARGB(clr,m_alpha));
}
2.el. "を "CElementBase:: "に置き換えると、"IsAvailable - access to non-staticmember of function "というコンパイルエラーが発生します。
for(int e=0; e<elements_total; e++)
{
//--- Проверяем только доступные элементы
CElement *el=m_wnd[m_active_window_index].m_elements[e];
if(!el.IsVisible() || !el.IsAvailable() || el.IsLocked())
continue;
//--- Обработка события в обработчике элемента
el.OnEvent(m_id,m_lparam,m_dparam,m_sparam);
}
//--- Выйти, если интерфейс не созданif(windows_total<1)
return;
//--- Изменить размер всех элементов заблокированной формы, если включен один из режимовif(m_windows[0].IsLocked() && (m_windows[0].AutoXResizeMode() || m_windows[0].AutoXResizeMode()))
{
また、ライブラリを編集せずに同じことを行うにはどうすればよいですか?
Element.mqhファイルのCElementコンストラクタで、m_fontとm_font_sizeの値を置き換えてください。 また、ライブラリを修正せずに同じことを行うにはどうすればよいでしょうか?
また、各要素を作成する際に、これらの値を指定することに何か問題があるのでしょうか?
グラフィカルインターフェースを作成するための EasyAndFastGUI ライブラリです:
作者:Anatoli Kazharski
やあ、一緒に、
このソースを試してみました。本当に素晴らしい仕事だ!
私のニーズに合わせようとしましたが、うまくいきませんでした。何時間もデバッグした後、私はそれを見つけました:
ExampleEA.mq5のファイル名が14文字より長い場合、コンボボックスの作成中に、Canvasクラス内の関数ResourceCreate()がエラー4016(リソースが見つかりません)で失敗します。
この動作は既知ですか?このエラーが発生する正確な状況が分からないので、このようなエラーを防ぐ方法を調べようとしています。
Update:簡単な解決策に対応するディスカッションを見つけました。
あるアップデートの後、グローバル ターミナル変数 文字列のバッファが減少し、ここしばらくの間、重大なエラーが発生しています。
この問題は、Expert Advisorのスタートアップファイルの名前を変更することで解決できます。
例えば、MacdSampleCFrames.ex5からMacd.ex5という ように。
アンカー(ANCHOR_RIGHT)のテキストラベルパラメータを 設定するには ?
バグですか??
Gustavo Enedir Hennemann:
Hello,
I didn't get it. What to do?
m_mainをCElementBase:: に置き換える。
ミハイル・セルゲイエフさん、パウロ・カンペロさん、こんにちは!
みんな、
警告の数を18から6に減らしたよ。
そして、その6つの問題は以下の4つのタイプに集約されます。どうすれば適切に修正できるか、アドバイスいただけますか?
1.CElementBase::」と正しく置き換えるには?
2.el. "を "CElementBase:: "に置き換えると、"IsAvailable - access to non-staticmember of function "というコンパイルエラーが発生します。
3.同じ行です。"el.IsLocked()" を "CElementBase::IsLocked" に置き換えると、"IsLocked - 関数の非静的メンバへのアクセス" という エラーが発生します。
4.m_windows[0].IsLocked() "を何と置き換えたらよいでしょうか?
お願いします!このライブラリを使えたら最高です。しかし、私たちはまずこれらのいくつかのことを解決する必要があります。
ありがとうございました!