記事"グラフィカルインタフェースIX:プログレスバーと折れ線グラフコントロール(チャプター2)"についてのディスカッション - ページ 3 1234 新しいコメント Artyom Trishkin 2016.08.27 22:42 #21 アナトールさん、プログレスバーのプロセス説明を動的に変更することは可能ですか?シンボル名の 配列があるとします。この配列をループして文字名を取得します。次に、各シンボルをプログラムで処理してデータを取得します。全体のサイクルは1つのプログレスバーで表示されますが、個々のシンボルを処理するプロセスも表示したいと思います。従って、「CMGを処理する」という処理名に符号をつけ、次の処理をするときには、すでに「EQIXを処理する」などと別の処理名を書いておく。どのようなシンボルが配列に入っているかは事前にわからない。つまり、プログレスバーの束を用意することはできないし、異なるシンボルの名前が1000以上あると最適とはいえない......。 Anatoli Kazharski 2016.08.30 21:12 #22 Artyom Trishkin:アナトールさん、プログレスバーのプロセス説明を動的に変更することは可能ですか?シンボル名の 配列があるとします。この配列をループして文字名を取得します。次に、各シンボルをプログラムで処理してデータを取得します。全体のサイクルは1つのプログレスバーで表示されますが、個々のシンボルを処理するプロセスも表示したいと思います。従って、「CMGの処理」という処理名に符号をつけ、次の処理をするときには、すでに「EQIXの処理」というように、別の処理名を書いておく。配列の中にどんなシンボルが入っているか事前にわからない、つまりプログレスバーを何本も用意することはできないし、異なるシンボルの名前が1000以上あると最適とは言えない......。 今はそのような方法はない。次のアップデートでは、テキストの説明がある各要素に対してこの機能を追加する予定です。つまり、アイテム作成後にテキストを変更できるようにする。 Artyom Trishkin 2016.08.30 22:48 #23 Anatoli Kazharski: 今のところ、そのようなメソッドはありません。次回のアップデートでは、テキストの説明を持つ各要素に対してこの機能を追加する予定です。つまり、アイテム作成後にテキストを変更できるようになります。ありがとうございます。)質問: サンプルの中にプログレスバーを作るためのコードがあります://+------------------------------------------------------------------+ | プログレス・バーを作成する| //+------------------------------------------------------------------+ bool CProgram::CreateProgressBar(const int x_gap,const int y_gap) { //--- フォームへのポインタを保存する m_progress_bar.WindowPointer(m_window); //--- 座標 int x=m_window.X()+x_gap; int y=m_window.Y()+y_gap; //--- 作成前にプロパティを設定する m_progress_bar.YSize(15); m_progress_bar.BarYSize(11); m_progress_bar.BarXOffset(65); m_progress_bar.BarYOffset(2); m_progress_bar.BarBorderWidth(1); m_progress_bar.LabelText("Processing:"); m_progress_bar.AreaColor(C'225,225,225'); m_progress_bar.BarAreaColor(clrWhiteSmoke); m_progress_bar.BarBorderColor(clrWhiteSmoke); m_progress_bar.IsDropdown(true); m_progress_bar.AutoXResizeMode(true); m_progress_bar.AutoXResizeRightOffset(230); //--- 要素の作成 if(!m_progress_bar.CreateProgressBar(m_chart_id,m_subwin,x,y)) return(false); //--- 要素を隠す m_progress_bar.Hide(); //--- ベースの要素へのポインタを追加する。 CWndContainer::AddToElementsArray(0,m_progress_bar); return(true); } //+------------------------------------------------------------------+ドロップダウン要素の属性は何ですか?m_progress_bar.IsDropdown(true);??? Anatoli Kazharski 2016.08.31 07:34 #24 Artyom Trishkin:質問:あなたのサンプルには、プログレス・バーを構築するための次のようなコードがあります:ドロップダウン要素の特徴は何のためですか???? フォームが展開されたときにプログレス・バーを表示しないようにするためです。 Artyom Trishkin 2016.08.31 18:50 #25 Anatoli Kazharski: フォームが展開されたとき、プログレスバーが表示されるべきでないときに、プログレスバーが表示されないようにする。 これは、あなたのライブラリで構築できるすべてのオブジェクトに当てはまりますか? Anatoli Kazharski 2016.09.01 11:55 #26 Artyom Trishkin: これは、ライブラリを使用して構築できるすべてのオブジェクトに適用されますか? はい。IsDropdown()メソッドはCElement 基底クラスにあり、すべてのGUI 要素で使用できます。 Alexander Fedosov 2017.03.31 15:56 #27 プログレスバーのプロパティを動的に変更することはできません。例えば、私は色を変更したかった: void IndicatorColor(const color clr) { m_indicator_color=clr; }ゼロ回答。どうやら、Updateメソッドでは、インデックスと合計値の変更に加えて、他のm_indicator_colorなどを書き込む必要があるようだ。そうでなければ、これらのメソッドは作成時以外にはどこにも適用されない。それとも、これが意図された方法だったのだろうか? Anatoli Kazharski 2017.03.31 16:03 #28 Alexander Fedosov:...そうでなければ、これらの方法は創造時以外には適用されない。それとも、それが意図された方法だったのでしょうか? はい、これは暫定版です。まもなく(次の数記事で)、すべてのコントロールに対して大規模なアップデートが行われ、実行 時にどのプロパティも変更できるようになります。 Alexander Fedosov 2017.03.31 16:06 #29 Anatoli Kazharski: そう、これは暫定版だ。まもなく(次の数記事で)、すべてのコントロールの大規模なアップデートが行われ、実行 時にどんなプロパティでも変更できるようになる。楽しみだ。その間に、一時的な解決策を見つけた://+------------------------------------------------------------------+ //|| プログレス・バーを更新| //+------------------------------------------------------------------+ void CProgressBar::Update(const int index,const int total) { //--- 新しいインデックスを設定する CurrentIndex(index); //--- 新しい範囲を設定する StepsTotal(total); //--- インジケータの幅を計算する double new_width=(m_current_index/m_steps_total)*m_bar_bg.XSize(); //--- 1より小さい場合は調整する if((int)new_width<1) new_width=1; else { //--- フレームの幅を調整する int x_size=m_bar_bg.XSize()-(m_bar_border_width*2); //--- 範囲外の場合は修正する if((int)new_width>=x_size) new_width=x_size; } //--- インジケータの新しい幅を設定する m_indicator.X_Size((int)new_width); //--- パーセントを計算し、文字列を形成する。 double percent =m_current_index/m_steps_total*100; string desc =::DoubleToString((percent>100)? 100 : percent,m_digits)+"%"; //--- 新しい値を設定する m_percent.Description(desc); m_indicator.BackColor(m_indicator_color); m_indicator.Color(m_indicator_color); } Wenxin Lv 2017.07.28 15:37 #30 172218684: あなたはすべてのこの金の戦闘に単一のグループ172218684 172218684を叫んで、利益を得るために継続され、ここで検証を叫ぶシングル - 強さはプライスレスです!嘘つき 1234 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
アナトールさん、プログレスバーのプロセス説明を動的に変更することは可能ですか?
シンボル名の 配列があるとします。この配列をループして文字名を取得します。次に、各シンボルをプログラムで処理してデータを取得します。全体のサイクルは1つのプログレスバーで表示されますが、個々のシンボルを処理するプロセスも表示したいと思います。従って、「CMGを処理する」という処理名に符号をつけ、次の処理をするときには、すでに「EQIXを処理する」などと別の処理名を書いておく。
どのようなシンボルが配列に入っているかは事前にわからない。つまり、プログレスバーの束を用意することはできないし、異なるシンボルの名前が1000以上あると最適とはいえない......。
アナトールさん、プログレスバーのプロセス説明を動的に変更することは可能ですか?
シンボル名の 配列があるとします。この配列をループして文字名を取得します。次に、各シンボルをプログラムで処理してデータを取得します。全体のサイクルは1つのプログレスバーで表示されますが、個々のシンボルを処理するプロセスも表示したいと思います。従って、「CMGの処理」という処理名に符号をつけ、次の処理をするときには、すでに「EQIXの処理」というように、別の処理名を書いておく。
配列の中にどんなシンボルが入っているか事前にわからない、つまりプログレスバーを何本も用意することはできないし、異なるシンボルの名前が1000以上あると最適とは言えない......。
今のところ、そのようなメソッドはありません。次回のアップデートでは、テキストの説明を持つ各要素に対してこの機能を追加する予定です。つまり、アイテム作成後にテキストを変更できるようになります。
ありがとうございます。)
質問: サンプルの中にプログレスバーを作るためのコードがあります:
ドロップダウン要素の属性は何ですか?
m_progress_bar.IsDropdown(true);???
質問:あなたのサンプルには、プログレス・バーを構築するための次のようなコードがあります:
ドロップダウン要素の特徴は何のためですか?
???
フォームが展開されたとき、プログレスバーが表示されるべきでないときに、プログレスバーが表示されないようにする。
これは、ライブラリを使用して構築できるすべてのオブジェクトに適用されますか?
プログレスバーのプロパティを動的に変更することはできません。
例えば、私は色を変更したかった:
ゼロ回答。どうやら、Updateメソッドでは、インデックスと合計値の変更に加えて、他のm_indicator_colorなどを書き込む必要があるようだ。そうでなければ、これらのメソッドは作成時以外にはどこにも適用されない。それとも、これが意図された方法だったのだろうか?
...そうでなければ、これらの方法は創造時以外には適用されない。それとも、それが意図された方法だったのでしょうか?
そう、これは暫定版だ。まもなく(次の数記事で)、すべてのコントロールの大規模なアップデートが行われ、実行 時にどんなプロパティでも変更できるようになる。
楽しみだ。その間に、一時的な解決策を見つけた:
あなたはすべてのこの金の戦闘に単一のグループ172218684 172218684を叫んで、利益を得るために継続され、ここで検証を叫ぶシングル - 強さはプライスレスです!
嘘つき