Red de conocimiento informático - Aprendizaje de código fuente - Problemas al exportar datos de imágenes y texto en tablas avanzadas usando lenguaje sencillo

Problemas al exportar datos de imágenes y texto en tablas avanzadas usando lenguaje sencillo

Tengo un código fuente de producción de imágenes, puedes consultar la plantilla

. Versión 2

.Ensamblaje Ventana ensamblaje 1

.Variable de ensamblaje Paleta de imágenes, paleta, "0"

.Variable de ensamblaje Número de imagen, Entero, "0 "

. Mesa de trabajo actual variable de ensamblaje, mesa de trabajo

. El número actual de la variable de ensamblaje, tipo de byte

. Ancho de variable de ensamblaje, tipo de byte

. Altura de la variable de ensamblaje, tipo de byte

. Subrutina _Load_Button_Clicked

Variable local El número de imágenes actuales, tipo de byte

Ancho = valor (editbox1.content)

Altura = al valor (editbox2.content)

.Si es verdadero (Diálogo general 1.Abrir ())

Recuento de imágenes actuales = al miembro de la matriz ( Paleta de imágenes)

.Si es verdadero (Imágenes actuales > 0)

Paleta de imágenes [Imágenes actuales]. Color de fondo de la paleta = #greygreen

Paleta de imágenes [Actual Número de imagen]. Dibujar imágenes (Número de imagen [Número de imagen actual], 8, 8, 32, 32,)

.Finalizar si es verdadero

Redefinir matriz (número de imagen, verdadero). , número de imagen actual + 1)

Número de imagen [número de imagen actual + 1] = cargar imagen (diálogo común 1. nombre de archivo)

si es verdadero ((palette2.fetch-. ancho de imagen (número de imagen [número de imagen actual + 1]) ≠ ancho o paleta2.fetch-imagen-alto (número de imagen [número de imagen actual + 1]) ≠ alto) y cuadro de selección1 .checked = false)

.if true(infobox("El tamaño de la imagen que se va a cargar es" + to text(palette2.fetch-picture-width(número de imagen [número de imagen actual + 1])+ "×" + to text (palette2.fetch-picture-height (número de imagen [número de imagen actual + 1])) + "×" + al texto (palette2.fetch-picture-height (número de imagen [número de imagen actual + 1])) 1]) )+"×"+"×"+al texto (paleta2.+ Cuadro de edición 1.Contenido + "×" + Cuadro de edición 2.Contenido + "Los píxeles que no coincidan con el tamaño establecido se escalarán automáticamente de acuerdo con el tamaño establecido . ¿Estás seguro de que quieres cargar? "+ # Salto de línea + " Puede seleccionar la casilla de verificación " + # Abrir cita + "Imagen de escala automática" + # Cerrar cita + " Evitar este cuadro de mensaje.", #icono de información + #botón de cancelación de confirmación, "cargar imagen ") = #botón cancelar)

Regresar ()

Si es verdadero, finalizar

.

Finalizar si es verdadero

Número de imagen actual = Obtener miembro de la matriz (tablero de imágenes)

Redefinir la matriz (tablero de imágenes, verdadero, número de imagen actual + 1)

Copiar Componente de ventana (Tablero 2, Tablero de imágenes [Número de imagen actual + 1])

Tablero de imágenes [Número de imagen actual + 1]. etiqueta = a texto (número de imagen actual + 1)

paleta de imágenes [número de imagen actual + 1]. Mover (Imagen actual × 48 + (Imagen actual + 1) × 12, 10, 48, 48)

Paleta de imágenes [imagen actual + 1]. Visualización = Verdadero

Ajuste de imagen Muestras [número de imagen actual + 1]. Color de fondo de la paleta = #azul

Paleta de imágenes [número de imagen actual + 1]. Dibujar (número de imagen [número de imagen actual + 1], 8, 8, 32, 32,)

. Si es verdadero (número actual ≠ 0)

Paleta de imágenes [número actual]. Color de fondo de la paleta = #gris verde

Paleta de imágenes [número actual]. número], 8, 8, 32, 32, )

.End if true

Paleta actual = Paleta de imágenes [Número de imagen actual + 1]

Actual Número = Número de imagen actual + 1

.Si es verdadero (paleta [número de imagen actual + 1]. Izquierda + 60 > Panel1.Ancho)

Barra de desplazamiento horizontal1 = Visible

p>

Barra de desplazamiento horizontal1.Posición máxima = Panel de imágenes [Número de imagen actual + 1].Izquierda + 60 - Panel de imagen1.Ancho

Barra de desplazamiento horizontal1.Posición = Barra de desplazamiento horizontal1.Posición máxima

PicturePanel5.Move (- Horizontal ScrollBar1.MaxPosition, , , )

.End if true

Asignación continua (Falso, botón generar. Deshabilitar, botón borrar. Deshabilitar, botón eliminar. Desactivar, insertar botón.

Deshabilitado)

Panel5.width = Panel5.width + 60

.End if true

.Subroutine_Generate_Button_Clicked

Contenedor de variables locales1, byte

Panel4.visible = true

Panel4.move (12, (panel3.height - height) ÷ 2, número de miembros de la matriz de recuperación (número de imagen) × ancho, alto)

La primera vez del ciclo de conteo (obtener el miembro de la matriz (número de imagen), contenedor 1)

Panel 4. Fin del ciclo de conteo ()

<. p >.Si es verdadero (paleta4.izquierda + paleta4.ancho + 12 > paleta3.ancho)

Barra de desplazamiento horizontal 2.visible = verdadero

Barra de desplazamiento horizontal 2.posición máxima = paleta4.izquierda + paleta4.ancho + 12 - paleta3.ancho

Barra de desplazamiento horizontal 2.posición = Barra de desplazamiento horizontal 2. p>

DibujoPad4.move (12 - LandscapeScrollBar2.maxPosition, , )

.End if true

Botón Guardar. Desactivar = Falso

. if(horizontalscrollbar2.visible = true)

_Ventana de inicio. Mover(, , , 326)

De lo contrario

_Iniciar ventana. mover(, , , 308)

.si final

. Subrutina_posición_barra de desplazamiento horizontal1 cambiada

Panel 5. mover (-posición de la barra de desplazamiento horizontal 1, , , )

Panel_posición_barra de desplazamiento horizontal2 cambiada

Panel 4. mover (12 - Barra de desplazamiento horizontal2.posición, , , )

Se hace clic en la subrutina _Botón Borrar_

. Contenedor de variables locales1, bytes

.

Count Loop First (obtener miembro de la matriz (número de imagen), contenedor 1)

Tablero de dibujo 4.Dibujar imagen (número de imagen [contenedor 1], (contenedor 1 - 1) × ancho, 0, ancho, alto, )

Descargar imagen (número de imagen [contenedor 1])

Tablero de imágenes [contenedor 1].Destruir()

.Contar el final del bucle ()

Redefinir matriz (tablero de imágenes, falso, 0)

Redefinir matriz (número de imagen, falso, 0)

Tablero de imágenes 4. borrar (, , , )

Tablero de imágenes 4. visual = false

Asignaciones continuas (verdadero, botón Generar. Desactivar, botón guardar. Desactivar, botón borrar. Desactivar, botón eliminar. Desactivar, botón insertar. Desactivar )

Asignación continua (1. Barra de desplazamiento horizontal 1. Posición, Barra de desplazamiento horizontal 1. Posición máxima, Barra de desplazamiento horizontal 2. Posición, Barra de desplazamiento horizontal 2. Posición máxima)

HorizontalScrollbar1.Visual = False

HorizontalScrollbar2.Visual = False

Panel5.Move (0, , 72, )

_Launch_Window .Move (, , , 224)

Número actual = 0

Se hace clic en el botón Subrutina_Guardar

. Si es verdadero (GeneralDialog 2.Open())

. Si (Escribir en archivo (Diálogo general 2.Nombre de archivo, Panel de pintura 4.Obtener imagen (, ))

Cuadro de mensaje ("Guardando archivo de grupo de imágenes" + Diálogo general 2.Nombre de archivo + "¡Éxito!", # Icono de mensaje, "Guardar archivo de grupo de imágenes")

., #Icono de mensaje, "Guardar grupo de imágenes")

De lo contrario

Cuadro de mensaje ("Guardar grupo de imágenes"). Archivo de grupo de imágenes" + cuadro de diálogo general 2.Nombre de archivo + "¡Error!", #Icono de error, "Guardar grupo de imágenes")

. , #Icono de error, "Guardando grupo de imágenes")

.if end

.

Si es verdadero, final

.Subroutine__Launch Window_Creado

_Launch Window.Move (, , , 224)

.Subroutine__Edit box 1_Get focus

Cuadro de edición 1.Número de caracteres seleccionados = -1

.Subroutine_EditBox2_Gain Focus

EditBox2.Número de caracteres seleccionados = -1

.Subroutine_Editbox1_contenido cambiado

.Si es verdadero (al valor (editbox1.content) > 64)

Chirp ()

editbox1.content = buscar a la izquierda del texto (editbox1.content, buscar longitud de texto (editbox1.content) - 1)

posición de selección de editbox1.start = buscar longitud del texto (editbox1.content )

.End if true

.Subroutine_editbox2_ el contenido ha cambiado

.Si es verdadero (al valor (editbox2.content) > 64)

Tweet ()

editbox2.content = Texto izquierdo( editbox2.content, Longitud del texto izquierdo (editbox2.content) - 1)

posición de selección inicial de editbox2 = Toma la longitud del texto desde la izquierda (editbox2.content)

.Finalizar si true

.Subroutine_Panel2_Left Se ha presionado el botón izquierdo del mouse, valor lógico

.Parámetro posición horizontal, número entero

. Posición vertical del parámetro, número entero

Estado de la tecla de función del parámetro, número entero

. Contenedor de variable local1, tipo byte

Panel actual = Obtener componente de evento ()

Panel de imagen [número actual]. Color de fondo del panel = #gris verde

Panel de imagen [número actual]. drawPicture(PictureNumber [currentNumber], 8, 8, 32, 32,)

CurrentNumber = toValue(CurrentPalette.Tag)

CurrentPanel. Color de fondo del panel = #azul

Panel actual. DrawPicture(Número de imagen [Número actual], 8, 8, 32, 32,)

. Subrutina _Delete_Button_Clicked

Variable local Container1, bytes

Mesa de trabajo actual. Destroy ()

Eliminar miembro (número de imagen, número actual, 1)

Eliminar miembro (panel de imágenes, número actual, 1)

.Clear(, , , )

Panel4.visual = false

Asignación continua (Verdadero, botón generar. Desactivar, botón guardar. Desactivar, botón borrar. Desactivar, botón eliminar. Desactivar, botón insertar.

Prohibido)

Asignación continua (1. Barra de desplazamiento horizontal 1. posición, barra de desplazamiento horizontal 1. posición máxima, barra de desplazamiento horizontal 2. posición, barra de desplazamiento horizontal 2. posición máxima)

> Barra de desplazamiento horizontal 1.visible = false

Barra de desplazamiento horizontal 2.visible = false

_Inicia la ventana. Mover (, , , 224)

De lo contrario

. Si es verdadero (número actual ≤ el número de miembros de la matriz que se obtendrán (tablero de imágenes))

Primero realice un bucle variable (número actual, obtenga miembros de la matriz (tablero de imágenes), 1, contenedor 1).

Tablero de imágenes[contenedor1]. tag = to text(contenedor 1)

Paleta de imágenes [contenedor 1].left = Paleta de imágenes [Contenedor 1].left - 60

.variable loop end()

.End if true

Paleta actual = Paleta de imágenes [Seleccionar (Número actual > Recuperar miembros de la matriz (paleta de imágenes), Recuperar miembros de la matriz (paleta de imágenes), Número actual)]

Número actual = Valor (paleta actual. Marcador)

Panel de imágenes [Color de fondo de la paleta del número actual = #azul

Panel de imágenes [número actual]. Dibujar (número de imagen [número actual], 8, 8, 32, 32,)

. If (Paleta de imágenes [Obtener miembro de matriz (Paleta de imágenes)].Izquierda + 60 > Panel1.Ancho)

Barra de desplazamiento horizontal 1.Visible = Verdadero

Panel de desplazamiento horizontal1.Posición máxima = PicturePanel [Obtener miembros de la matriz (PicturePanel)].Izquierda + 60 - Panel1.Width

Barra de desplazamiento horizontal1.Position = Barra de desplazamiento horizontal1.Posición máxima

Panel5.Move (- Barra de desplazamiento horizontal1. Posición máxima, , , )

. De lo contrario

Barra de desplazamiento horizontal1.Visible = False

Paleta5.Left = 0

.if end.

. Si final

Panel 5.ancho = Panel 5.ancho - 60

.Subrutina_Insertar_Botón_Clicked

.Variables locales insert_picture_board, picture_board

. Variable local insert_picture_number, entero

. Contenedor1 de variable local, número de bytes

.

si es verdadero (Diálogo común 1. Abrir ())

Insertar número de imagen = Cargar imagen (Diálogo común 1. Nombre de archivo)

Si es verdadero ((Panel 2. Tomar ancho de imagen. (inserte número de imagen) ≠ ancho o panel 2. Tome la altura de la imagen (inserte número de imagen) ≠ altura) y seleccione la casilla 1. Marcado = Falso)

. si es verdadero (MessageBox ("El tamaño de la imagen que se va a cargar es" + al texto (Plantilla2.Tomar ancho de imagen (insertar número de imagen)) + "×" + al texto (Plantilla2.Tomar ancho de imagen (insertar número de imagen)) ))

+ "×" + al texto (Plantilla2.Tomar altura de imagen (insertar número de imagen)) + "Píxeles que no coinciden con la configuración" + Cuadro de edición 1.Contenido + "×" + Cuadro de edición 2. Contenido + "Los píxeles se escalarán automáticamente según el tamaño establecido. ¿Estás seguro de que deseas cargar?" + # Salto de línea + "Puedes marcar la casilla de verificación" + # Abrir cita + "Escala automática de imágenes" + # Cita de cierre + "para evitar este cuadro de mensaje"., #ícono de información + #botón de cancelar confirmación, "cargar imagen") = #botón de cancelar)

regresar ()

. Si es verdadero final

.Si es verdadero final

Ancho del panel 5 = Ancho del panel 5 + 60

Insertar miembro (número de imagen, número actual + 1, insertar número de imagen)

Copiar componente de ventana (Panel 2, insertar panel)

Insertar miembro (panel de imagen, número actual + 1, insertar panel)

Imagen panel [número actual + 1]. Visual = True

Paleta de imágenes [número actual + 1]. Color de fondo de la paleta = #azul

Paleta de imágenes [número actual + 1]. Etiqueta = A texto (número actual + 1)

Paleta de imágenes [número actual + 1]. Izquierda = Paleta actual. Izquierda + 60

Paleta de imágenes [Número actual + 1]. Dibujar imágenes (Número de imagen [Número actual + 1], 8, 8, 32, 32,)

Corrección de color actual. lámina. Color de fondo del panel = # gris-verde

Panel actual.

Haz un dibujo (número de imagen [número actual], 8, 8, 32, 32,)

Panel actual = Panel de imagen [número actual + 1]

Número actual = número actual + 1

.Bucle variablePrimero (Número actual + 1, Obtener miembros de la matriz (tablero de imágenes), 1, Contenedor 1)

Tablero de imágenes [Contenedor 1]. Marca = al texto ( Contenedor 1)

Paleta de imágenes [contenedor 1].Izquierda = Paleta de imágenes [Contenedor 1].Izquierda + 60

.Fin del bucle variable()

. si es verdadero (PicturePanel [tomar miembros de la matriz (PicturePanel)].Izquierda + 60 > Panel1.Ancho)

Barra de desplazamiento horizontal1.Visible = Verdadero

Barra de desplazamiento horizontal1.Posición máxima = Panel de imagen [Obtener miembros de la matriz (PicturePanel)].Izquierda + 60 - PicturePanel1.Width

HorizontalScrollBar1.Position = HorizontalScrollBar1.MaxPosition

PicturePanel5.Move (- HorizontalScrollBar1.MaxPosition, , )