programacion para dev descargar ats atc c++ user-interface assembly window

para - programacion c++



Crear una GUI desde cero en c++ o ensamblado (4)

He tenido numerosas malas experiencias con la biblioteca GUI

entonces me gustaría saber cómo crear una ventana desde cero en c ++. No estoy hablando de win32, lo que quiero decir es básicamente crearlo sin ninguna biblioteca externa.

¿Hay alguna manera de tal vez usar una imagen o algo así para crear una ventana? Sí, sé lo difícil que será.

También leí en alguna parte que la biblioteca podría estar hecha para c ++ en ensamblaje

¿Hay alguna manera de crear una interfaz gráfica de usuario personalizada en el ensamblaje o c ++?

EDITAR: apunto solo a las ventanas

PD: otra razón por la que quiero aprender cómo hacerlo es porque

Es posible que desee crear un sistema operativo. así que me gustaría GUI con eso ...


Para crear una ventana, necesitará interactuar con cualquier sistema de ventanas que esté presente actualmente en su sistema operativo. Esto requerirá llamadas al sistema si el administrador de ventanas se ejecuta en el espacio del kernel (como es el caso de Windows) o algún tipo de comunicación entre procesos para administradores de ventanas de espacio de usuario (como X). Para crear la ventana desde cero, deberá leer cómo funcionan estos administradores de ventanas y qué protocolos utilizan. En el caso de X, no debería ser demasiado difícil encontrar recursos sobre cómo funciona el protocolo. En el caso de Windows, su única opción podría ser utilizar la API, ya que las funciones internas del administrador de ventanas son propiedad.


Podría intentar leer detenidamente el código fuente en MenuetOS : creo que está escrito completamente en ensamblaje y tiene una GUI. Por supuesto, esto no funcionará si está intentando escribir un programa que se ejecuta en Windows, Linux, etc. Pero si desea evitar todas las bibliotecas externas, incluida la interfaz con Windows, tendrá que ejecutar en el metal desnudo .


Si está lo suficientemente loco como para hacer esto en el ensamblaje, instale masm32 , puede hacer GUIs básicas como ventanas / buzones de mensajes, etc.


Usted crea una ventana "desde cero" en Windows, llamando a la API Win32 "CreateWindowEx".