Desarrollo de un sistema de ayuda. Animación. Método del punto base

Nota: Este juego de acceso anticipado no está completo y puede o no cambiar más. Si usted no son Si estás emocionado de jugar este juego en su estado actual, entonces deberías esperar para ver si el juego avanza en su desarrollo.

Lo que los desarrolladores tienen que decir:

¿Por qué el acceso anticipado?

“Game Builder es un prototipo experimental creado para ver si un híbrido de juego y herramienta es algo que interese a la gente. Si a los usuarios les gusta (o lo que podría llegar a ser), continuaremos haciendo crecer la aplicación y desarrollando funciones basadas en los comentarios”.

¿Aproximadamente cuánto tiempo estará este juego en acceso anticipado?

"Dado que se trata de un prototipo experimental temprano y gratuito, depende de los comentarios de los usuarios; podría oscilar entre varios meses y un año".

¿En qué se diferenciará la versión completa de la versión de acceso anticipado?

“Muy pronto agregaremos el modo multijugador en tiempo real, para que puedas crear y jugar juegos con tus amigos.

Más allá de eso, el alcance de la versión completa se basa en los comentarios de los usuarios de acceso anticipado, pero estas son algunas de las cosas que hemos considerado agregar:

  • Importación/exportación de Unity3D
  • texturas de youtube
  • Efectos de sonido
  • Secuencias de comandos de efectos de partículas
  • NPC que buscan caminos
  • Más comportamientos y objetos prefabricados
  • Compartir comportamientos y objetos prefabricados en Steam Workshop
  • Más juegos de ejemplo
  • Efectos de cámara programables
  • interfaz de usuario 2D herramientas de creación

¿Cuál es el estado actual de la versión de acceso anticipado?

“Esta es una construcción estable con gráficos de calidad de producción.

Esto incluye todas las funciones enumeradas en la sección "Acerca de esto", incluidas estas herramientas para juegos de construccion:

  • Herramienta de creación: busque y agregue modelos 3D de Google Poly e imágenes 2D de Google Imágenes
  • Herramientas para mover y rotar: coloque los objetos en el espacio 3D
  • Herramienta Escala: hacer crecer o reducir el objeto
  • Herramienta de inspección: agregue comportamientos predefinidos o personalizados a los objetos
  • Herramienta de construcción: crea niveles con bloques de terreno y paredes
  • Herramienta de texto: crea notas o burbujas de texto
  • Herramienta Copiar: Copiar y pegar
  • Herramienta Eliminar: objetos explotados
Todavía hay mucho por hacer, especialmente el modo multijugador, pero queríamos difundirlo y ver qué características crees que deberían ser una prioridad”.

¿El precio del juego tendrá un precio diferente durante y después del acceso anticipado?

"Game Builder seguirá siendo gratuito en el futuro previsible".

Cómo eres¿Planea involucrar a la comunidad en su proceso de desarrollo?

“Estamos activos en el foro de discusión de Steam, así como medios de comunicación social. O puede utilizar nuestros formularios de comentarios integrados. Independientemente de cómo quiera hablar con nosotros, estamos aquí para escucharlo y mejorar el producto para usted”.

Jugar al constructor de juegos

¡Ahora puedes encontrar otros constructores con quienes colaborar usando el nuevo y elegante navegador de juegos! Simplemente haz clic en "Unirse al modo multijugador" en el menú principal. Para iniciar un juego público, carga un proyecto y elige "Multijugador público".

Recuerde que el modo multijugador todavía está en BETA, por lo que habrá algunos errores y desconexiones. Para ayudar a prevenir pérdidas catastróficas de trabajo, también hemos facilitado la restauración de los guardados automáticos:

Y por último, pero no menos importante, puedes mantener presionado B con la herramienta Construir para crear grandes áreas rellenas más rápidamente:

Esperamos que todos estén teniendo unas excelentes vacaciones. ¡Pronto volveremos a estar en pleno apogeo y estamos ansiosos por brindarles más actualizaciones interesantes en 2019!

4 comentarios

C++ Builder permite al programador desarrollar programas que funcionan con gráficos. Este capítulo le indica lo que se debe hacer para que una imagen formada a partir de primitivas gráficas, o una ilustración creada en un editor de gráficos u obtenida como resultado de escanear una fotografía, aparezca en la superficie del formulario.

  • lápiz y pincel

    Los métodos para dibujar primitivas gráficas solo proporcionan dibujo. El tipo de elemento gráfico está determinado por las propiedades Pluma (lápiz) y Pincel (pincel) de la superficie (Canvas) sobre la que dibuja el método.

  • Primitivas gráficas. Línea. Linea rota.

    Cualquier imagen, dibujo o diagrama puede considerarse como un conjunto de primitivas gráficas: puntos, líneas, círculos, arcos, etc. Así, para que imagen requerida, el programa debe proporcionar un dibujo (salida) de los elementos gráficos, primitivos que componen esta imagen.

  • Rectángulo

    El método Rectángulo dibuja un rectángulo. En las instrucciones de llamada al método, debe especificar las coordenadas de dos puntos: las esquinas del rectángulo. Por ejemplo, el operador: | Lienzo › Rectángulo(10.10.50.50) | Dibuja un cuadrado, a la izquierda. esquina superior que está ubicado en el punto (10, 10), y el inferior derecho está en el punto (50, 50).

  • Polígono. Círculo y elipse.

    El método Polígono dibuja un polígono. La instrucción de llamada al método general se ve así: | Lienzo › Polígono (p, n) | Donde p es un arreglo de registros tipo TPoint que contiene las coordenadas de los vértices del polígono; n - número de vértices.

  • Arco. Sector.

    El método Arco dibuja un arco, parte de una elipse (círculo). La instrucción de llamada al método general se ve así: | Lienzo › Arco(xl,yl,x2,y 2,x3,y3, x4,y4) | Los parámetros x1, y1, x2, y2 definen la elipse (círculo), de la que forma parte el arco.

  • Texto

    El método TextOutA proporciona salida de texto (líneas de tipo Ansistring) a la superficie de un objeto gráfico. Las instrucciones para llamar al método TextoutA en general tienen este aspecto: | Lienzo › TextOutA(x,y,Text) | El parámetro de texto especifica el texto que se mostrará.

  • Punto

    La superficie sobre la que el programa puede mostrar gráficos corresponde al objeto lienzo. La propiedad Píxeles, que es matriz bidimensional tipo TColor, contiene información sobre el color de cada punto de la superficie gráfica.

  • Ilustraciones

    La forma más sencilla de mostrar una ilustración ubicada en un archivo con la extensión .bmp, .jpg o .ico es utilizar el componente de imagen, cuyo icono se encuentra en la pestaña Adicional de la paleta de componentes (Fig. 3.9). Las principales propiedades del componente se dan en la tabla. 3.5. | Arroz. 3.9.

  • Imágenes de bits

    Para formar imágenes complejas se utilizan imágenes de bits. Una imagen de bits suele ser una imagen pequeña que se almacena en la memoria de la computadora. | Puede generar una imagen de bits cargándola desde un archivo bmp o desde un recurso, así como copiando un fragmento de otra imagen de bits, incluso desde la superficie del formulario.

  • Animación. Método del punto base.

    La animación generalmente se refiere a mover y cambiar dibujos. En el caso más simple, el dibujo sólo puede moverse o sólo cambiar. | Es bastante sencillo asegurar el movimiento de un dibujo: primero hay que mostrar el dibujo en la pantalla, luego de un rato borrarlo y volver a mostrar el mismo dibujo, pero a cierta distancia de su posición original.

  • Usando mapas de bits. Cargando un mapa de bits desde un recurso del programa.

    En el último ejemplo, la imagen se formó a partir de primitivas gráficas. Ahora veamos cómo se puede implementar el movimiento de una imagen preparada de antemano utilizando un editor gráfico. | Como en el programa anterior, el efecto de mover un objeto (imagen) se logra volviendo a dibujar periódicamente la imagen con cierto desplazamiento con respecto a su posición anterior.

  • Crear un archivo de recursos

    El archivo de recursos se puede crear utilizando la utilidad Editor de imágenes que viene con C++ Builder. Puede iniciar el Editor de imágenes desde C++ Builder seleccionando el comando Editor de imágenes en el menú Herramientas, o desde Windows seleccionando Inicio › Programas › Borland C++Builder › Editor de imágenes.

  • Conexión de un archivo de recursos

    Para que los recursos ubicados en el archivo de recursos estén disponibles para el programa, se debe colocar una instrucción (directiva) en el texto del programa que le indicará al compilador que Archivo ejecutable debe agregar el contenido del archivo de recursos.

  • Constructores y destructores

    El constructor está diseñado para inicializar un objeto y se llama automáticamente cuando se crea. Las siguientes son las principales propiedades de los constructores:

    El constructor no devuelve ningún valor. No se puede obtener un puntero a un constructor.

    Una clase puede tener varios constructores con diferentes parámetros para diferentes tipos de inicialización (se utiliza un mecanismo de sobrecarga).

    Un constructor llamado sin parámetros se denomina constructor predeterminado.

    Los parámetros del constructor pueden ser de cualquier tipo excepto de la misma clase. Puede establecer valores de parámetros predeterminados. Sólo uno de los constructores puede contenerlos.

    Si no se especificó ningún constructor al escribir el programa, el compilador crea uno automáticamente.

    Los constructores no se heredan.

    Los constructores no se pueden declarar con modificadores constantes, virtuales y estáticos

    Los constructores de objetos globales se llaman antes de llamar. funciones principales. Los objetos locales se crean tan pronto como su alcance se activa. El constructor también se inicia cuando se crea un objeto temporal (por ejemplo, cuando se pasa un objeto desde una función).

    Un destructor es un tipo especial de método que se utiliza para liberar la memoria ocupada por un objeto. El destructor se llama automáticamente cuando el objeto sale del alcance:

    Para objetos locales: al salir del bloque en el que están declarados;

    Para los globales, como parte del procedimiento de salida de main;

    Para objetos definidos mediante punteros, el destructor se llama implícitamente cuando se utiliza la operación de eliminación.

    El nombre del destructor comienza con una tilde (), seguida inmediatamente por el nombre de la clase. Propiedades destructoras:

    no tiene argumentos ni valor de retorno;

    no se puede declarar como constante o abstracta;

    no heredado;

    puede ser virtual.

    Si un destructor no está definido explícitamente, el compilador lo vaciará automáticamente.

    Trabajar con gráficos en C++ Builder

    C++ Builder proporciona componentes especiales para la construcción gráfica. TCanvas (Canvas) es una clase diseñada para mostrar y almacenar objetos gráficos en C++ Builder. El lienzo está incluido en la mayoría de los componentes visuales, excepto en la mayoría de los componentes visuales, excepto en los controles de ventana estándar (TButton, TMemo, Tpanel, etc.).

    Usando los métodos de esta clase, puede dibujar tanto primitivos estándar (líneas, elipses, rectángulos) como objetos gráficos, como Graphics::TBitmap.

    El acceso al contorno de cualquier objeto se produce de la siguiente manera:

    nombre_objeto->Lienzo->Propiedad/Método;

    Un lienzo, en su representación gráfica, es una matriz bidimensional de píxeles. Cada elemento de esta matriz almacena información de color. Se puede acceder a un píxel individual desde la propiedad Píxeles, que se analizará con más detalle a continuación.

    Punto(0,0): la esquina superior izquierda del lienzo. El valor de la coordenada x aumenta de izquierda a derecha desde el punto (0,0) y el valor de la coordenada y aumenta de arriba a abajo.

    Trabajar con objetos gráficos en ISR C++ Builder 6.0

    C++ Builder permite al programador desarrollar programas que funcionan con gráficos. Este capítulo le indica lo que se debe hacer para que una imagen formada a partir de primitivas gráficas, o una ilustración creada en un editor de gráficos u obtenida como resultado de escanear una fotografía, aparezca en la superficie del formulario.

    Desarrollo sistema de ayuda

    El programa puede mostrar gráficos en la superficie de un formulario (o componente de imagen) al que corresponde la propiedad del lienzo (Canvas es un lienzo para dibujar). Para que una línea, círculo, rectángulo u otro elemento gráfico (primitivo) aparezca en la superficie de un formulario o componente de imagen, debe aplicar el método apropiado a la propiedad del lienzo.

    Por ejemplo, el operador

    Formulario->Lienzo->Rectángulo(10,10, 50, 50);

    Dibuja un rectángulo en la superficie del formulario.

    Tabla 2.2. La tabla describe métodos para dibujar primitivas.

    Acción

    RellenarRect(xl,yl,x2,y2)

    Dibuja un rectángulo relleno, xl, yl, x2, y2 - determina las coordenadas de las esquinas diagonales

    MarcoRect(xl,yl,x2,y 2)

    Dibuja el contorno de un rectángulo, xl, yl, x2, y2: determina las coordenadas de las esquinas diagonales.

    RondaRect(xl,yl,x2,y2,x3,y3)

    Dibuja un rectángulo con esquinas redondeadas.

    Elipse(xl,yl,x2,y2)

    Dibuja una elipse o un círculo (círculo), xl, yl, x2, y2 son las coordenadas del rectángulo dentro del cual se dibuja la elipse o, si es recta,

    el triangulo es un cuadrado, un circulo

    Polilínea(puntos,n)

    Dibuja una polilínea, los puntos son una matriz de tipo TPoint. Cada elemento de la matriz representa un registro cuyos campos x e y contienen

    coordenadas del punto de inflexión de la polilínea; n es el número de enlaces de la polilínea. El método Polyline dibuja una polilínea, conectando secuencialmente puntos cuyas coordenadas están en la matriz con segmentos rectos: el primero con el segundo, el segundo con el tercero, el tercero con el cuarto, etc.

    Dibuja una línea desde el punto actual hasta un punto con las coordenadas especificadas

    Rectángulo(xl,yl,x2,y2)

    Dibuja un rectángulo, xl, yl y x2, y2 son las coordenadas de las esquinas superior izquierda e inferior derecha del rectángulo. El color del borde y zona interior del rectángulo puede variar

    Los métodos de representación primitiva de gráficos tratan la propiedad del lienzo como un lienzo abstracto en el que pueden dibujar (Canvas se traduce como "superficie" o "lienzo para dibujar"). El lienzo consta de puntos individuales: píxeles. La posición de un píxel en la superficie del lienzo se caracteriza por coordenadas horizontales (X) y verticales (Y). Las coordenadas aumentan de arriba a abajo y de izquierda a derecha. El píxel superior izquierdo de la superficie del formulario (área del cliente) tiene coordenadas (0,0), el inferior derecho - (ciientwidth, ciientHeight). Se accede a un píxel individual a través de la propiedad Píxeles, que es una matriz bidimensional cuyos elementos contienen información sobre el color de los píxeles del lienzo. Deberías prestar atención a punto importante. La imagen formada en la superficie del formulario puede dañarse, por ejemplo, como resultado de la superposición total o parcial de la ventana del programa con otra ventana. Por tanto, el programador debe asegurarse de que en el momento en que aparezca la ventana, el programa vuelva a dibujar la imagen dañada. Afortunadamente, el quirófano sistema windows informa al programa sobre la necesidad de volver a dibujar la ventana enviándole el mensaje correspondiente, como resultado de lo cual se produce el evento OnPaint. El evento OnPaint también ocurre cuando se inicia el programa, cuando la ventana aparece en pantalla por primera vez. Por lo tanto, las instrucciones que garantizan que los gráficos se muestren en la superficie del formulario deben colocarse en la función para manejar el evento onPaint.

    Fig.2.4. Coordenadas de puntos en la superficie del formulario (Canvas)

    lápiz y pincel

    Los métodos para dibujar primitivas gráficas solo proporcionan dibujo. El tipo de elemento gráfico está determinado por las propiedades Rep (lápiz) y Brush (pincel) de la superficie (Canvas) sobre la que dibuja el método. El lápiz y el pincel, al ser propiedades del objeto lienzo, representan a su vez objetos Rep y Pincel. Las propiedades del objeto Rep especifican el color, el grosor y el tipo de línea o borde de una figura geométrica. Las propiedades del objeto Pincel (Tabla 3.3) especifican el color y el método de sombrear el área dentro de un rectángulo, círculo, sector o contorno cerrado.

    Tabla 2.3. Propiedades del objeto Pluma

    Propiedad

    define

    Color de linea

    Grosor de línea (establecido en píxeles)

    Tipo de línea (psSolid - sólida; psDash - trazos largos y punteados; psDot - trazos cortos y punteados; psDashDot - trazos punteados, alternados largos y cortos; psDashDotDot - punteado, alternando un trazo largo y dos cortos; psClear - la línea no es mostrado (se usa si no necesita mostrar el borde de un área, por ejemplo, un rectángulo)

    Propiedades del objeto de pincel

    Color del área cerrada

    Estilo de relleno de área (bsSolid - relleno sólido. Rayado: bsHorizontal - horizontal; bsVertical - vertical; bsFDiagonal - diagonal con líneas inclinadas hacia adelante; bsBDlagonal - diagonal con líneas inclinadas hacia atrás; bsCross - a cuadros; bsDiagCross - diagonal a cuadros

    Primitivas gráficas

    Cualquier imagen, dibujo o diagrama puede considerarse como un conjunto de primitivas gráficas: puntos, líneas, círculos, arcos, etc. Así, para que la imagen deseada aparezca en pantalla, el programa debe asegurar el dibujo (salida) de elementos gráficos: las primitivas que componen esta imagen. El dibujo de primitivas gráficas en una superficie (un formulario o un componente de imagen, el área de salida de la ilustración) se realiza aplicando los métodos apropiados a la propiedad Lienzo de esta superficie.

    El dibujo de una línea recta se realiza mediante el método LineTo. El método dibuja una línea desde el punto donde se encuentra actualmente el lápiz (este punto se llama posición actual del lápiz o simplemente "actual") hasta el punto cuyas coordenadas se especifican en la instrucción de llamada al método. Por ejemplo, el operador Canvas-XLineTo(100,200) dibuja una línea hasta un punto con coordenadas (100, 200), después de lo cual el punto con coordenadas (100, 200) se convierte en el actual. El punto inicial de la línea se puede establecer moviendo el lápiz al punto deseado en la superficie gráfica. Esto se puede hacer usando el método MoveTo, especificando las coordenadas del punto inicial de la línea como parámetros.

    Por ejemplo, los operadores

    CanVas->MoverA(10,10); // coloca el lápiz en la punta (10,10)

    Lienzo->LineTo(50,10); // línea desde el punto (10,10) hasta el punto (50,10)

    dibujar linea horizontal desde el punto (10, 10) hasta el punto (50, 10).

    Usando la propiedad del punto actual, puedes dibujar una polilínea.

    Por ejemplo, los operadores

    Lienzo->MoverA(10,10);

    Lienzo->LineTo(50,10);

    Lienzo-LineTo(10,20) ;

    Línea de lienzo a (50,20);

    dibuja una línea similar a la letra Z.

    linea rota

    El método Polilínea dibuja una polilínea. Como parámetros, al método se le pasa una matriz de tipo TPoint que contiene las coordenadas de los nodos de línea y el número de segmentos de línea. El método Polyline dibuja una polilínea, conectando secuencialmente puntos cuyas coordenadas están en la matriz: el primero con el segundo, el segundo con el tercero, el tercero con el cuarto, etc.

    Por ejemplo, el siguiente fragmento de código dibuja una polilínea que consta de tres enlaces.

    Punto T p; // coordenadas de los puntos inicial, final y de inflexión

    II establecer las coordenadas de los puntos de la polilínea

    р.х = 100; р.у = 100; // Comenzar

    р.х = 100; р.у = 150; // punto de inflexión

    р.х = 150; р.у = 150; // punto de inflexión

    р.х = 150; р.у = 100; // fin

    Lienzo->Polilínea(р,3); // polilínea de tres enlaces

    El método Polilínea se puede utilizar para dibujar trazados cerrados. Para ello es necesario que el primero y el últimos elementos matriz contenía las coordenadas del mismo punto.

    Rectángulo

    El método Rectángulo dibuja un rectángulo. En las instrucciones de llamada al método, debe especificar las coordenadas de dos puntos: las esquinas del rectángulo.

    Por ejemplo, el operador Lienzo->Rectángulo(10,10, 50, 50) dibuja un cuadrado con la esquina superior izquierda en (10, 10) y la esquina inferior derecha en (50, 50).

    El color, tipo y ancho de la línea de contorno del rectángulo están determinados por los valores de la propiedad Rep, y el color y estilo de relleno del área dentro del rectángulo están determinados por los valores de la propiedad Pincel de la superficie. en el que el método dibuja el rectángulo. Por ejemplo, los siguientes operadores dibujan la bandera de la Federación Rusa.

    Lienzo->Pincel->Color = clWhite; // color del pincel - blanco

    Lienzo->Rectángulo(10,10,90,30);

    Lienzo->Pincel->Color = clBlue; // color del pincel - azul

    Lienzo->Rectángulo(10,30,90,50);

    Lienzo->Pincel->Color = clRed; // color del pincel - rojo

    Lienzo->Rectángulo(10,50,90,70);

    En lugar de cuatro parámetros (las coordenadas de las dos esquinas diagonales del rectángulo), al método Rectángulo se le puede pasar un parámetro, una estructura de tipo TRect, cuyos campos determinan la posición de las esquinas diagonales del área rectangular. El siguiente fragmento de código demuestra el uso de una estructura TRect como parámetro del método Rectángulo.

    TRecto retiro; // área rectangular

    ret.Abajo = 50;

    Lienzo->Rectángulo(rct); //dibuja un rectángulo

    Hay dos métodos más para dibujar un rectángulo. El método FillRect dibuja un rectángulo relleno usando solo un Pincel como herramienta, mientras que el método FrameRect dibuja solo un contorno y usa solo un Lápiz. Estos métodos tienen sólo un parámetro: una estructura de tipo TRect. Los campos de la estructura TRect contienen las coordenadas del área rectangular. Los valores de los campos de la estructura TRect se pueden configurar usando la función Rect.

    Por ejemplo:

    TRecto retiro; //área a pintar

    ret = Rect(10,10,30,50); // coordenadas del área

    Lienzo->Pincel->Color = clRed; // color de relleno

    Lienzo->FillRect(ret);

    El método RoundRec dibuja un rectángulo con esquinas redondeadas. En general, las instrucciones para llamar al método RoundRec tienen este aspecto:

    Lienzo->RoundRec(xl,yl,x2,y2,xZ,yZ)

    Los parámetros xl, yl, x2, y2 determinan la posición de las esquinas del rectángulo, y los parámetros x3 e yz determinan el tamaño de la elipse, una cuarta parte de la cual se utiliza para dibujar una esquina redondeada.

    Fig.2.5.

    Polígono

    El método Polígono dibuja un polígono. La instrucción de llamada al método general se ve así:

    Lienzo->Polígono(p, p)

    donde p es un arreglo de registros tipo TPoint que contiene las coordenadas de los vértices del polígono; n - número de vértices. El método Polígono dibuja un polígono conectando puntos cuyas coordenadas están en la matriz con líneas rectas: el primero con el segundo, el segundo con el tercero, el tercero con el cuarto, etc. El tipo de borde del polígono está determinado por los valores. ​de la propiedad Rep, y el tipo de relleno del área delimitada por la línea de borde está determinado por los valores de la propiedad Rep el valor de la propiedad Pincel de la superficie sobre la que dibuja el método. A continuación se muestra un fragmento de código que, utilizando el método Polygon, dibuja un diamante,

    Punto T p [ 4 ] ; // cuatro vértices

    // coordenadas del vértice

    р.х = 50; р.у = 100;

    р.х = 150; р.у = 75;

    р.х = 250; r[2]. y = 100;

    р.х = 150; р.у = 125;

    Lienzo->Pincel->Color = clRed;

    Lienzo->Polígono(p,3);

    Circulo y elipse

    Puedes dibujar una elipse o un círculo (un caso especial de elipse) usando el método Elipse. La instrucción de llamada al método general se ve así:

    Lienzo->Elipse(xl,yl,x2, y2)

    Los parámetros xi, yi, x2, y2 determinan las coordenadas del rectángulo dentro del cual se dibuja una elipse o, si el rectángulo es un cuadrado, un círculo.


    Fig.2.6.

    En lugar de cuatro parámetros (las coordenadas de las esquinas diagonales del rectángulo), al método Ellipse se le puede pasar uno: un objeto de tipo TRect. El siguiente fragmento de código demuestra el uso de un objeto TRect como parámetro del método Ellipse. TRect rec = Rect(10,10,50,50);

    Lienzo->Elipse(rec);

    Como en el caso de dibujar otras primitivas, el tipo de contorno de la elipse (color, grosor y estilo de línea) está determinado por los valores de la propiedad Rep, y el color y estilo de relleno del área dentro de la elipse están determinados por la valores de la propiedad Pincel de la superficie (lienzo) sobre la que dibuja el método.

    sistema de referencia

    Cada programa debe proporcionar al usuario información de referencia. Hay dos formas de mostrar la información de ayuda: clásica y moderna, “estilo Internet”. Manera clásica La mayoría de las aplicaciones utilizan la visualización de información de ayuda, incluido C++ Builder. La visualización de información de ayuda al estilo de Internet se utiliza en el software. productos microsoft y en Últimamente, en productos de otros desarrolladores software. El sistema de ayuda clásico es un conjunto de archivos utilizados por el programa Winhelp, que es un componente parte de ventanas, muestra información de ayuda. La base de este sistema de ayuda son los archivos hip. La base de un sistema de ayuda moderno son los archivos chm. Un archivo chm es un documento HTML compilado que se obtiene al compilar (fusionar) los archivos que componen el documento HTML, incluidos los archivos de ilustración. Puedes crear un archivo hip usando Utilidades de Microsoft Help Workshop, que se incluye con C++ Builder (el archivo de utilidad hce.exe se encuentra en el directorio CBuilderHelpTools). El archivo chm se puede crear usando la utilidad de Microsoft Ayuda HTML Workshop, que lamentablemente no está incluido en C++ Builder. Consideremos el proceso de creación de un sistema de ayuda utilizando el método clásico.

    Crear un sistema de ayuda usando Microsoft Help Workshop

    Fig.2.7. ventana de ayuda lista para usar

    El proceso de creación de un sistema de ayuda consta de dos etapas. En la primera etapa es necesario preparar la información de referencia, en la segunda, transformar la información de referencia en un sistema de referencia. La tarea de la primera etapa se puede resolver utilizando un editor de texto, la segunda, utilizando la utilidad Microsoft Help Workshop. Crear un sistema de ayuda usando Microsoft Help Workshop

    Preparación de antecedentes.

    El material fuente de Microsoft Help Workshop es información de referencia presentada en forma de archivo rtf. La forma más sencilla de preparar un archivo rtf con información de ayuda es utilizar Microsoft Word. Primero debe escribir el texto de los temas de ayuda. Los títulos de las secciones deben tener formato utilizando uno de los estilos de título. Cada sección debe terminar con un salto de página. Una vez tecleado el texto de las secciones, a cada sección se le debe asignar un identificador. El identificador se asigna insertando una nota al pie # antes del título de la sección. Para asignar un identificador a una sección, debe colocar el cursor delante de la primera letra del título de la sección, luego seleccionar el comando Nota al pie en el menú Insertar y, en el cuadro de diálogo Notas al pie que aparece, seleccionar otra posición en En el grupo Numeración, ingrese el símbolo “#” en el campo de edición. Como resultado de hacer clic en el botón Aceptar, se insertará una nota al pie # en el documento y se abrirá una ventana para ingresar el texto de la nota al pie en la parte inferior de la ventana del documento. . En esta ventana, al lado del icono de nota al pie, debes ingresar el identificador de la sección. Se recomienda que el identificador de sección esté formado por el prefijo IDH_ y número de serie sección, por ejemplo, IDH_I, IDH_II, etc. Por lo general, en el texto de la información de ayuda hay enlaces que proporcionan la transición a otra sección relacionada con la que el usuario está viendo actualmente. Al preparar el texto de la información de ayuda, la palabra del enlace debe subrayarse con una doble línea e inmediatamente después de esta palabra, sin espacio, colocar el identificador de la sección de ayuda a la que se debe realizar la transición como resultado de seleccionar el enlace. El identificador insertado debe tener el formato de texto oculto. Para establecer un subrayado doble, debe seleccionar la palabra del enlace y seleccionar Formato | Fuente y en la ventana que aparece, seleccione el método de subrayado. De manera similar, debe configurar el "texto oculto" para el identificador. Como ejemplo, a continuación se muestra la vista de la ventana del editor de texto durante la preparación de un archivo de ayuda para el programa Buscaminas 2003. El título del juego está marcado como un enlace a otro tema de ayuda, que tiene el ID IDH_3.


    Además de un vínculo que lo lleva a otro tema de ayuda, puede insertar un vínculo a un comentario en su documento (texto que aparece en una ventana emergente). Cuando el sistema de ayuda se está ejecutando, los enlaces a los comentarios se resaltan en color y se subrayan con una línea de puntos. Al preparar un documento del sistema de ayuda, los comentarios, al igual que los temas de ayuda, se colocan en una página separada, pero el texto del comentario no debe tener título. La nota al pie # debe colocarse antes del texto del comentario. Un enlace a un comentario tiene el siguiente formato: primero, debe subrayar la palabra con una sola línea, cuya elección debería hacer que aparezca el comentario, luego, inmediatamente después de esta palabra, inserte el identificador del comentario, formateándolo como texto oculto. Cabe señalar que la información de ayuda se puede distribuir en varios archivos.

    Proyecto del sistema de ayuda.

    El compilador incluido con Microsoft Help Workshop convierte el archivo de ayuda en un archivo de ayuda. Los datos de origen para el compilador son información de ayuda presentada en forma de archivos rtf y un archivo de proyecto del sistema de ayuda. Para convertir la información de ayuda preparada en un editor de texto en un sistema de ayuda, primero debe crear un archivo de proyecto del sistema de ayuda. . Para hacer esto, debe iniciar Microsoft Help Workshop y seleccionar Nuevo | Ayuda Proyecto El cuadro de diálogo Nombre del archivo del proyecto aparecerá en la pantalla. En esta ventana, debe abrir la carpeta en la que se encuentra el archivo de ayuda (archivo rtf), configurar el nombre del proyecto y hacer clic en el botón Guardar. Como resultado de estas acciones, se creará un archivo de proyecto (archivo hpj) y la ventana del proyecto del sistema de ayuda estará disponible.


    Figura 2.9.

    Lo primero que debe hacer es agregar un archivo rtf al proyecto, que contiene información de referencia. Para hacer esto, primero debe hacer clic en el botón Archivos, luego, en la ventana Archivos de tema que se abre, hacer clic en el botón Agregar.

    Aparecerá un cuadro de diálogo estándar Abrir archivo en la pantalla, mediante el cual podrá seleccionar el archivo RTF deseado. Si la información de ayuda se distribuye en varios archivos, se debe repetir la operación de agregar un archivo.


    Fig.3.1.


    Fig.3.2.

    Una vez seleccionados todos los archivos necesarios, haga clic en Aceptar en la ventana Archivos de tema. Como resultado de estas acciones, volverá a estar disponible la ventana del proyecto, en cuya sección se enumerarán los archivos que contienen la información de referencia.

    Lo siguiente que debe hacer es asignar valores numéricos a los identificadores de la sección de ayuda. Para hacer esto, en la ventana del proyecto primero debe hacer clic en el botón Mapa, luego, en la ventana Mapa que se abre, hacer clic en el botón Agregar. La ventana Agregar entrada de mapa aparecerá en la pantalla.

    En el campo ID de tema de esta ventana debe ingresar el identificador del tema de ayuda (los identificadores se asignaron a los temas durante la creación del archivo rtf), en el campo Valor numérico asignado: un número que identifica el tema. En el campo Comentario puede ingresar un comentario: el nombre del tema de ayuda. Una vez que se hayan asignado valores numéricos a los identificadores de temas de ayuda, se puede cerrar la ventana Mapa.

    Lo último que debe hacer es personalizar la apariencia de la ventana de información de ayuda. Para hacer esto, en la ventana del proyecto, haga clic en botón de ventanas, en el campo Crear una ventana con nombre de la ventana Crear una ventana que se abre, ingrese la palabra principal y haga clic en el botón Aceptar. La ventana Propiedades de la ventana aparecerá en la pantalla, en el campo de texto de la barra de título de la pestaña General, donde deberá ingresar el título de la ventana principal del sistema de ayuda que se está creando. En este punto, se inicia el proceso de creación de una ayuda simple. proyecto del sistema puede ser

    considerar completado. Ahora puedes compilar. Para hacer esto, seleccione el comando Compilar en el menú Archivo, seleccione la casilla Mostrar automáticamente el archivo de ayuda en WinHelp cuando termine en el cuadro de diálogo Compilar un archivo de ayuda que aparece y haga clic en el botón Compilar.

    Cuando se complete la compilación, aparecerá una ventana en pantalla con un mensaje informativo sobre los resultados de la compilación y, si la compilación fue exitosa, una ventana del sistema de ayuda creado. El compilador colocará el archivo del sistema de ayuda (archivo .hlp) en la carpeta en la que se encuentra el archivo del proyecto.

    Mostrar información de ayuda

    Normalmente, la ventana de ayuda está disponible presionando una tecla o seleccionando el comando del menú Ayuda?. Para que el usuario pueda presionar la tecla mientras el programa se está ejecutando , podría obtener información de ayuda, la propiedad HelpFile de la ventana principal de la aplicación debe contener el nombre del archivo del sistema de ayuda y la propiedad HelpContext debe contener el identificador numérico de la sección deseada.

    Puede configurar su propio tema de ayuda para cada componente del formulario. Tema de ayuda que aparece cuando el foco está en un componente y el usuario presiona una tecla , determinado por el valor de la propiedad HelpContext de este componente. Si el valor de la propiedad Helpcontexr del control es cero, cuando se presiona la tecla Aparece el tema de ayuda especificado para el formulario de solicitud.

    ¿Para que la información de ayuda aparezca en la pantalla como resultado de una selección de menú? Comando de ayuda, debe crear una función para manejar el evento Onclick para el comando de menú correspondiente. El proceso de creación de una función de procesamiento de eventos para un comando de menú no es diferente del proceso de creación de una función de procesamiento de eventos para un elemento de control, por ejemplo, para un botón de comando: en la lista de objetos debe seleccionar un objeto del Ttipo de elemento del menú para el cual se crea la función de procesamiento de eventos, y en la pestaña Eventos - el evento .

    A continuación se muestra la función para manejar el evento Onclick para el comando del menú Ayuda.

    // selección de menú? Comandos de ayuda

    void _ fastcall TForml: :N3Click (TObject *Remitente)

    WinHelp(Forml->Handle, "saper.hlp",HELP_CONTEXT, 1);

    La salida de información de ayuda se realiza mediante la función winHelp, a la que se le pasa como parámetro el identificador de la ventana del programa que solicita la salida de información de ayuda, el archivo de ayuda, la constante HELP_CONTEXT y el identificador de la sección cuyo contenido debe se mostrará.

    Componente - Menú principal


    Fig.3.3. Forma principal Programa "zapador"

    La ventana principal del programa contiene el componente MainMenui, que representa el menú principal del programa. El icono del componente MainMenu se encuentra en la pestaña Estándar.

    Fig.3.4. Componente del menú principal

    El icono del componente MainMenu se puede colocar en cualquier lugar del formulario, ya que no es visible mientras el programa se está ejecutando. Los elementos del menú aparecen en la parte superior del formulario como resultado de la configuración del componente. Para personalizar el menú, utilice el editor de menú, que ejecuta haga doble clic haga clic con el botón izquierdo en el icono del componente o seleccione entre Menú de contexto componente del comando Diseñador de menús. Al comenzar a trabajar en un nuevo menú, inmediatamente después de agregar un componente al formulario, aparece un solo rectángulo en la ventana del editor: un elemento de menú en blanco. Para convertir esta plantilla en un menú, debe ingresar el nombre del menú en el campo Título de la ventana del Inspector de objetos. Si ingresa el signo & antes de cualquier letra en el nombre del menú, mientras el programa se está ejecutando, puede hacerlo. active este elemento del menú presionando la combinación de teclas y la clave correspondiente al carácter precedido por &. En el nombre del menú esta letra estará subrayada. Para agregar un elemento al menú principal, debe seleccionar el último elemento del menú (vacío) en la ventana del editor de menú e ingresar el nombre del nuevo elemento. Para agregar un comando a un menú, debe seleccionar el elemento del menú al que desea agregar el comando, mover el puntero del elemento de menú activo al final de la lista de comandos del menú e ingresar el nombre del comando. Una vez creada la estructura del menú, debe configurar los elementos del menú usando la ventana del Inspector de objetos (puede seleccionar un elemento de menú personalizado en la ventana del formulario de la aplicación o de la lista de objetos en la parte superior de la ventana del Inspector de objetos). Cada elemento del menú (elementos y comandos) es un objeto de tipo TMenuitem. Las propiedades de los objetos TMenuitem determinan la apariencia del menú mientras se ejecuta el programa. Cuando se selecciona un elemento del menú mientras el programa se está ejecutando, se produce el evento Click. Para crear un procedimiento para manejar este evento, debe seleccionar un elemento del menú en la ventana del formulario y hacer clic con el botón izquierdo. C++ Builder creará una plantilla para un procedimiento para procesar este evento. Como ejemplo, a continuación se muestra una función para manejar el evento de clic que se produce como resultado de una selección de menú. Comandos de ayuda. N3 es el nombre del elemento del menú correspondiente a este comando.

    // selección de menú "?" Comandos de ayuda

    anular llamada rápida TForml::N3Click(TObject *Remitente)

    WinHelp(Forml->Handle,"saper.hip",HELP_CONTEXT,I);

    C++ Builder en tareas y ejemplos - Kultin N.B. Kultin N.B. C++ Builder en tareas y ejemplos - BHV San Petersburgo, 2005. - 335 p.
    ISBN 0-470-86398-65-94157-631-5
    Descargar(enlace directo) : C++buildervzadachah2005.pdf Anterior 1 .. 58 > >> Siguiente
    Imágenes emparejadas Juego Imágenes emparejadas Demuestra trabajar con gráficos y mostrar información de referencia. Las imágenes se cargan desde el archivo Pictures.bmp.
    1
    Descripción SO-YOM 321
    Tabla P1 (continuación)
    Descripción del proyecto (catálogo)
    Impresión El programa Factura muestra la salida a la impresora y le permite preparar e imprimir una factura.
    Ping Pong El programa Ping Pong demuestra cómo los gráficos pueden hacerse interactivos.
    Tiempo El programa Tiempo (proyecto Meteo.bpr) demuestra la operación de escritura en un archivo: agrega información sobre la temperatura del aire al archivo meteo.txt. Si no hay ningún archivo de datos en el directorio actual, el programa lo crea. El programa Temperatura Promedio Mensual (proyecto Meteolnfo.bpr) demuestra la lectura de datos de Archivo de texto(meteo.txt)
    Vuelo en las nubes Animación cuyos elementos se cargan desde un archivo bmp. El siguiente cuadro se forma en la memoria 8 y luego se muestra en la superficie del formulario, lo que evita el parpadeo de la imagen (borra el objeto y lo dibuja en un nuevo lugar, como una operación de salida).
    Bienvenida El programa Bienvenida demuestra cómo mostrar texto en la superficie de un formulario. Independientemente del tamaño del formulario, el texto aparece en el centro del formulario.
    Ver ilustraciones El programa Ver ilustraciones le permite
    Stratsionno ver ilustraciones jpg. Demuestra el uso de los componentes ListBox, OpenDialog e Imagen.
    Ver ilustraciones El programa Ver ilustraciones le permite
    page_2 ver archivos JPEG, como fotografías. La selección de carpetas se realiza en ventana estándar Selección de carpeta. Las ilustraciones se pueden ver cuadro por cuadro o como presentación de diapositivas.
    Buscaminas Juego Buscaminas. Demuestra cómo trabajar con gráficos, mostrar una ventana secundaria y mostrar información de ayuda.
    Cronómetro El programa Cronómetro demuestra el uso del componente Temporizador.
    322 Aplicación
    Tabla P1 (continuación)
    Descripción del proyecto (catálogo)
    Actual El programa Actual demuestra el uso de los componentes TextBox y Label, así como el manejo de la excepción EZeroDivide (división por cero).
    Recoge la imagen Juego Recoge la imagen - juego "15" con interfaz gráfica(en lugar de números, fragmentos de la imagen). La imagen se carga desde un archivo bmp, cuyo nombre se especifica en la línea de comando para iniciar el programa, o desde un archivo ubicado en el mismo directorio que el archivo del programa.
    Resistencia El programa Resistencia calcula la resistencia de un circuito eléctrico que consta de dos resistencias que se pueden conectar en serie o en paralelo. Demuestra el uso del componente RadioButton.
    Información de ayuda El programa Converter muestra varias formas de mostrar información de ayuda. El subdirectorio hip contiene los archivos necesarios para crear el archivo de ayuda.
    Información de referencia_2 El programa demuestra varios métodos visualización de información de ayuda. El subdirectorio\CT contiene los archivos necesarios para crear el archivo de ayuda.
    Bandera El programa de bandera olímpica demuestra la salida de gráficos a la superficie del formulario.
    Imagen de fondo El programa Imagen de fondo demuestra cómo se puede crear una imagen de fondo imprimiendo repetidamente un mapa de bits en la superficie de un formulario. El mapa de bits se carga desde el archivo Puzzle.bmp.
    Libra El programa Libras-Kilogramos le permite convertir su peso de libras a kilogramos. El botón Recálculo está disponible solo si el usuario ha ingresado los datos originales
    CD-ROM de descripción
    323
    Tabla P1 (final)
    Descripción del proyecto (catálogo)
    Reloj Walkers con manecillas de hora, minutos y segundos. Mostrar la hora actual. Comentario. Si el directorio del proyecto se llama "Reloj", se produce un error en tiempo de compilación. Al compilador no le gusta la palabra "Reloj", o más bien la letra "s"
    Programa examinador Las preguntas del examinador se leen desde el archivo (xb. Un ejemplo de un archivo de prueba: consulte peterburg.txt. El nombre del archivo de prueba debe especificarse en la línea de comando para iniciar el programa. El comando de inicio debe escribirse en Ejecutar ventana del programa, que está disponible al seleccionar el comando Inicio | Ejecutar
    Examinador_2 programa universal Examinador de pruebas. Demuestra el uso del componente del sistema XMI_6 (archivo de prueba - documento XML). El nombre del archivo de prueba se pasa al programa mediante el parámetro línea de comando. Para facilitar el proceso de lanzamiento del programa, puede crear un Labile (ver economics.bat).
    Electricidad El programa Electricidad muestra cómo una función puede procesar eventos de componentes diferentes (pero similares)
    Índice de materias
    V
    VgshI 309, 310
    CON
    Sapuad 278, 291 S1ietNei§1p 278 S1iet\UісШі 278
    X
    Archivo HMB 232
    A
    Valor absoluto 311
    Arctangente 312
    B
    Imagen de bits:
    cargando desde el archivo 81, 114 cargando desde el recurso 118
    Navegador 57
    EN
    Reproducción:
    AUI 150 SO 142 MUI 138
    R
    Representante 308, 309
    t
    Tgapvragesh 308
    MPZ 128 \?AU 124 Video 150 Salida: al archivo 62 a la impresora 259 Salida a la superficie del formulario:
    imagen 81, 306 texto 306
    Artes graficas:
    animación imagen de 115 bits 114 movimiento de objetos 109 ilustración 100
    Componentes básicos
    325
    línea 104
    animación 114 círculo 84 rectángulo 87 sector 93 texto 82
    imagen de fondo 121
    d
    Ventana de diálogo:
    Seleccionar una carpeta 128, 255 Acerca del programa 181 Abrir archivo 33



    
    Arriba