クラウドソーシングによるGUI。オープンベータテストを実施。 - ページ 47

 
Реter Konow:

がんばってください。あなたの成長を見守ります。

このコースを修了するつもりはなく、基本的なことだけを・・・・・・ゼロからのスタートであることと、コードが過剰にコメントされることを考慮すると、スタートすることになると思います。ここで?

アレクセイ・バルバシン

サーシャ、信じてくれ、ピーターには必要ないんだ;( すぐにわかるよ。)

なるほど、詳しいですね。

 
Алексей Барбашин:

まず、標準ライブラリの 基本オブジェクトをベースに開発した方が、将来的にずっと楽になると思います。

はい、もちろん部分的には頼りますが...。順風満帆というわけではありませんが。

つまり、1つのキャンバスに1つ1つのフォルムを作り上げるのが正しいやり方だと思うのです。その結果、動くと1つの固体になります。

そして、イベントサブスクリプションと同様にオブジェクトをアタッチするシステムは、開発者、つまりMFCの技術を使った方が良い。

MFCテクノロジー - その方法)

私は気にしませんが、オブジェクト(ロジック)ですべてを行い、それをグラフィカルに反映させる方が簡単かもしれません。そして、コンバが1つであろうが、たくさんであろうが、それほど重要ではありません。

座標から始めたところ

下品な考えですね。

enum EX{};
enum EY{};

class CCoordPBase
   {
   bool flag;
   CCoordPBase *base;
   public:
 //  bool chek(CCoorPDdX &x) {return CheckPointer() }
   EX X_,W_;
   EY Y_,H_;
   CCoordPBase (){Init();}
   void Init() {X_=Y_=W_=H_=0; flag=0;}
   void Init(CCoordPBase &a) {base=GetPointer(a);};
   
   EX GetX() {return flag ? X_  +  ;}
   EY GetY() {return Y_;}
   EX GetW() {return W_;}
   EY GetH() {return H_;}
   operator
   bool MouseOn(CMouse &mouse)//px
      {
      return GetX()<=mouse.X && GetX()+GetW()>=mouse.X && GetY()<=mouse.Y && GetY()+GetH()>=mouse.Y;
      }
   };  

まだ完成していません...すなわち、ちょうどvrobshcheを開始し、あなたが相互作用の任意の考えを持っている場合は、してください...

 
みんな、失礼だけど、自分で支店を作ったほうがいいよ。そちらの方が便利でしょう。ここで議論しているのは、そういうことではないんです。
 
Алексей Барбашин:

「しかし、オブジェクトですべてを行う方が簡単かもしれない」 - それは論理的というよりも

"はい、もちろん一部傾けますよ"- では、さっそく本題に入りましょう。

CObjectは、開発者用ライブラリのすべてのオブジェクトの基本クラスです。C++やC#とのアナロジーで作られています。シャープの基本オブジェクト(型)はObjectです。

座標と寸法はコントロールのプロパティであり、ボーダーの、色と太さ、丸みの半径、アイコンやテキストも同様である。

まず、どのような制御を初歩的に想定しているのかを定義し、基本的な性質を説明する必要がある。

もちろん、前に定義したプロパティのいくつかは、子孫のために省いても問題ありませんが、基本的なものを最も汎用性の高いものにするのが良いでしょう。

遠方で検索するのを避けるため、ここでは簡単なユニバーサルコントロールの例を紹介します。

背景、枠線、半径、アイコン、テキストを含む。

Labelであれば背景、枠線、アイコンは指定せず、Panelであれば内容は指定せず、画像ボタンであればアイコンのみ指定し、画像付きボタンであれば背景、枠線、画像を指定します。

つまり、この構図は、ほとんどの制御に対して極めて普遍的なものなのです。

頑張れ!!!!!!!

で、簡単なインタラクションを作ろうと思っていたのですが

行や列を並べる場合に、前のオブジェクトの左側などの位置決めをする場所です。

そこで、ユニバーサル制御を書く
 
Реter Konow:
みんな、失礼だけど、自分でスレッドを作った方がいいよ。そちらの方が便利でしょう。ここで議論しているのは、そういうことではないんです。

いいモデレーターが助けてくれることをずっと願っていた

 
Alexandr Andreev:

いい司会者が助けてくれることを期待していたのですが。

もちろん、ここで縄張りを争っているのであれば、そうなるでしょうが......。)自分のスレッドを開いて展開する。興味深く読ませていただきます))

 
Реter Konow:
みんな、失礼だけど、自分でスレッドを作った方がいいよ。そちらの方が便利でしょう。それ以外は、ここで他のことを議論します。

本当に議論になっているのでしょうか?

ピーター、あなたは真実を受け入れる準備ができてさえいないのです。

あなたの開発に出会った人は皆、「ピーター、かっこいいけど、ここをいじって、ここを変えて......」と言います。注:誰も悪いとは言っていない。それは、純粋にあなたの認識です

そして、その答えは?そして、ピーターはこう答えた。「あなたは間違っている。私には私のやり方があり、私の基準があり、私の分子観がある...」。

その時点で議論はストップし、人々は次に進むことになる。

そりゃあ、自分のためだけに、そう自分なりに何かをやっている人と、どうして付き合い続けられるんだろう。

あなたは「みんなのため」と主張しますが、この「みんな」の基準に従おうともしないので、最初の「スタンド」の後に「みんな」は議論やテストから立ち去ってしまうのです。

 
Алексей Барбашин:

本当に議論になっているのでしょうか?

ピーター、あなたは真実を受け入れようともしていない。

....

スレッドにユーザーが必要だ。私の製品をテストして使ってくれるトレーダー。ここで学術的な議論をするつもりはない。 誰が正しいかは、プライベートで確認することができます。

ここでは、コミュニティが無償で提供する製品をテストしています。 フルストップ

 
Алексей Барбашин:

本当に議論になっているのでしょうか?

ピーター、あなたは真実を受け入れる準備ができてさえいないのです。

あなたの開発に出会った人は皆、「ピーター、かっこいいけど、ここをいじって、ここを変えて......」と言います。注:誰も悪いとは言っていない。それは、純粋にあなたの認識です

そして、その答えは?そして、ピーターはこう答えた。「あなたは間違っている。私には私のやり方があり、私の基準があり、私の分子観がある...」。

その時点で議論は打ち切られ、人々はその場を立ち去った。

そりゃあ、自分のためだけに、そう自分なりに何かをやっている人と、どうして付き合い続けられるんでしょうね。

あなたは「みんなのため」と主張しますが、この「みんな」の基準に従おうともしないので、「みんな」はあなたの最初の「スタンド」の後に議論とテストから立ち去るのです。

https://www.mql5.com/ru/forum/334431

Создание графической библиотеки с нуля
Создание графической библиотеки с нуля
  • 2020.03.07
  • www.mql5.com
Общее обсуждение: Создание графической библиотеки с нуля
 
Alexandr Andreev:

https://www.mql5.com/ru/forum/334431

+