Interfaz gráfica de usuario de origen colectivo. Prueba beta abierta. - página 47

 
Реter Konow:

Buena suerte. Seguiré sus progresos.

No planeo completar este curso, sólo lo básico ..... considerando que estamos comenzando desde cero, y el código será excesivamente comentado, creo que comenzaremos. ¿Aquí?

Alexei Barbashin:

Sasha, créeme, Pedro no lo necesita ;( Ya verás muy pronto. :)

Bueno, tú estás al tanto.

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

En primer lugar, creo que es mejor desarrollar objetos basados en los objetos básicos de la librería estándar, facilitará mucho las cosas en el futuro.

Sí, por supuesto que nos basaremos parcialmente en .... aunque no todo es fácil.

De todo esto veo un enfoque correcto: cada forma debe ser creada completamente en un lienzo. Como resultado, cuando te muevas será un solo objeto sólido.

Y el sistema de adjuntar objetos, así como las suscripciones a eventos, debería ser mejor utilizado por los desarrolladores, es decir, utilizando la tecnología MFC.

tecnología MFC - así es como)

Realmente no me importa, pero puede ser más fácil hacer todo en objetos (lógica) que su reflejo gráfico. Y un convas o muchos no es tan importante.

Acabo de empezar con las coordenadas

Es una idea burda.

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;
      }
   };  

No ha terminado todavía ... es decir, acaba de empezar vrobshche, si usted tiene alguna idea de la interacción, por favor ...

 
Chicos, con todo el respeto, pero deberíais crear vuestra propia rama. Allí sería más conveniente. No es lo que estamos discutiendo aquí.
 
Алексей Барбашин:

"pero tal vez sea más fácil hacer todo en objetos" - eso es más que lógico

"Sí, por supuesto que nos apoyaremos en algo". - entonces vayamos al grano:

CObject es la clase base de todos los objetos de la biblioteca de desarrolladores. Hecho por analogía con C++ y C#. El objeto base (tipo) en Sharp es Object.

Las coordenadas y las dimensiones son propiedades del control, así como el color del borde, el color y el grosor, los radios de los redondeos, los iconos y el texto.

Primero tenemos que definir qué tipo de control vamos a suponer que es elemental y luego describir las propiedades básicas.

Por supuesto, algunas de las propiedades previamente definidas podrían no ser utilizadas posteriormente en los descendientes, no es un problema, pero es mejor hacer que la básica sea la más universal.

Para no tener que buscar mucho, he aquí un ejemplo de control universal sencillo:

Contiene fondo, borde, radio, icono y texto

Si necesita una Etiqueta, no se especifica el fondo, el borde y el icono; si necesita un Panel, no se especifica el contenido; si necesita un botón con imagen, sólo se especifica el icono; si necesita un botón con imagen, se especifica el fondo, el borde y la imagen.

Por lo tanto, esta composición es bastante universal para la mayoría de los controles.

¡¡¡¡¡Vamos!!!!!

y estaba pensando en hacer una simple interacción

donde pondremos posicionamientos como a la izquierda del objeto anterior en caso de alinear una línea o una columna

Así que escribimos un control universal
 
Реter Konow:
Chicos, con todo el respeto, pero deberíais crear vuestro propio hilo. Allí sería más conveniente. No es lo que estamos discutiendo aquí.

ok.... Seguía esperando que los moderadores ayudaran

 
Alexandr Andreev:

ok.... Esperaba que los moderadores ayudaran.

Por supuesto que lo harán, si estamos luchando por el territorio)). Abre tu propio hilo y desarróllalo. Lo leeré con interés)).

 
Реter Konow:
Chicos, con todo el respeto, pero deberíais crear vuestro propio hilo. Allí sería más conveniente. Por lo demás, aquí discutimos otras cosas.

¿Hay realmente una discusión?

Peter, ni siquiera estás preparado para aceptar la verdad.

Todo el mundo que se ha encontrado con tu desarrollo te ha dicho: Pedro, está bien, pero retoca aquí, cambia allí.... Nota: Nadie dijo que fuera malo. ¡Eso fue puramente tu percepción!

¿Y cuál es la respuesta? Y Pedro responde: te equivocas, yo tengo mi propio camino, mis propias normas y mi propia visión de las moléculas...

En ese momento cesó la discusión y la gente se alejó.

Es comprensible: cómo se puede seguir interactuando con alguien que está haciendo algo únicamente para sí mismo, a su manera.

Afirmas que lo haces por "todo el mundo", pero ni siquiera intentas seguir las normas de ese "todo el mundo", por lo que "todo el mundo" se aleja de la discusión y de las pruebas después de tu primera "postura".

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

¿Hay realmente una discusión?

Peter, ni siquiera estás dispuesto a aceptar la verdad.

....

Necesito usuarios en el hilo. Comerciantes que probarán mi producto y lo utilizarán. No pretendo llevar a cabo argumentos académicos aquí. Puedes averiguar quién tiene razón en privado.

Aquí probamos el producto que la comunidad ofrece gratuitamente. Punto y aparte.

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

¿Hay realmente una discusión?

Peter, ni siquiera estás preparado para aceptar la verdad.

Todo el mundo que se ha encontrado con tu desarrollo te ha dicho: Pedro, está bien, pero retoca aquí, cambia allí.... Nota: Nadie dijo que fuera malo. ¡Eso fue puramente tu percepción!

¿Y cuál es la respuesta? Y Pedro responde: te equivocas, yo tengo mi propio camino, mis propias normas y mi propia visión de las moléculas...

En ese momento la discusión se detendría, y la gente seguiría adelante.

Es comprensible: cómo se puede seguir interactuando con alguien que está haciendo algo únicamente para sí mismo, a su manera.

Afirmas que lo haces por "todo el mundo", pero ni siquiera intentas seguir las normas de ese "todo el mundo", por lo que "todo el mundo" se aleja de la discusión y de las pruebas después de tu primera "postura".

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

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

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

+