PDF de programación - Visual FoxPro 8.0 - Marquesinas

Imágen de pdf Visual FoxPro 8.0 - Marquesinas

Visual FoxPro 8.0 - Marquesinasgráfica de visualizaciones

Publicado el 5 de Agosto del 2020
59 visualizaciones desde el 5 de Agosto del 2020
392,6 KB
11 paginas
Creado hace 14a (31/07/2006)
Visual FoxPro 8.0 - Marquesinas



“Des pl a za mi ento de t e x to en un f or mul ari o V FP ”



Franciso González - jfpanchogp@gmail.com



Esta MARQUESINA es realizada en VFP 8.0, en esta se puede colocar en el
cuadro de texto cualquier frase y/o palabra, a continuación se presiona, además
se implementa un crusor; para agregar las palabras y/o frases q se han escrito.
Agregar y esta aparecerá, mas adelante se mostrara e indicar una marquesina
interactiva.

Código Fuente.
Form1.init()
salto = .T. * La utilizo para bloquear el menú este esta variable esta declarada en un prg
thisform.ShowTips = .T.
*!* Declaro las 2 variable publicas
*!* para desplazamiento horizontal
*!* y vertical
PUBLIC vert,hori
vert = 12
hori = 1
*!* Creo la tabla Temporal
*!* Nombre del Cursor Temp
*!* Nombre Campo de la tabla Campo que va a ser
*!* caracter de 20
CREATE CURSOR Tempo(Campo C(20))
*A continuación creo un método llamado validcampo()
*!* Este es un metodo para crearlo haz lo siguiente
*!* Situate en el menu Form, selecciona la opcion
*!* New Method, que este valor sea publico
*!* Verifico si el campo Text1 esta vacio
LOCAL a
a = thisform.text1.Value
IF ISBLANK(a) THEN

= MESSAGEBOX("El campo agregar nueva marquesina esta vacio,



1

imposible continuar.",0+48+0,"Validar.")
thisform.text1.SetFocus()
*!* Si esta vacio no se hara ninguna operacion
RETURN .F.

*!* Si existe algo escrito realizar la operacion
RETURN .T.

ELSE

ENDIF
Form1.Destroy()
*!* Libero la tabla temporal (cursor)
RELEASE tempo
CLEAR
CANCEL
Inserto un control Timer()

En el cual se coloca el siguiente código.
Timer1.Timer()
*!* colocar en propiedades, intervalo
*!* un valor para el desplazamiento
*!* esto sirve para hacer correr el reloj
vert = vert + 1
hori = hori +1
thisform.label2.Top = vert
thisform.label3.Left = hori
IF thisform.label2.Top == 228 THEN

vert = 12

ENDIF
IF thisform.label3.Left == 336 THEN

hori = 1

ENDIF
Ver el siguiente grafico.



2

En el botón Agregar.
Hago el llamado al método validcampo() el cual verifica si el campo de texto esta vació, si esta
vació, pedirá q se coloque algún texto.

Command1.Click()
IF NOT thisform.validcampo() THEN



RETURN .F.

ENDIF
LOCAL a
a = thisform.text1.Value
thisform.label2.Caption = ALLTRIM(a)
thisform.label3.Caption = ALLTRIM(a)
*!* Agrego el texto al cursor (T. temporal)
INSERT INTO Tempo(campo) VALUES (a)



3

El texto Frase de Prueba se desliza de izquierda a derecha, arriba hacia abajo.
Para colorear el label donde se encuentra el texto a mostrar (el texto o frase q se encuentra
insertado en la marquesina)



Check1.InteractiveChange()
LOCAL a,b
a = thisform.check1.Value
b = GETCOLOR()
IF a == 1 THEN

thisform.label2.BackStyle = 1
thisform.label3.BackStyle = 1
thisform.label2.BackColor = b
thisform.label3.BackColor = b

thisform.label2.BackStyle = 0
thisform.label3.BackStyle = 0

ELSE

ENDIF
En color Fondo; este código esta construido para dar un nuevo color al formulario, aquí el código
fuente.



OptionGroup1.InteractiveChange()
LOCAL a
a = GETCOLOR()
thisform.optiongroup1.Value = 1
thisform.BackColor = a
Para colorear el texto.



4



En
Check2.InterActiveChange()
LOCAL a,b
a = GETCOLOR()
thisform.label2.ForeColor = a
thisform.label3.ForeColor = a

Ahora bien mas adelante te voy a indicar el código de una marquesina q te da a escoger 2
opciones como son por ejemplo colocar en fuente Negrita o subrayar la palabra o frase q
ingresaste; en el siguiente te indico como están almacenados los datos en el CURSOR tabla
temporal. Ver grafico siguiente.


este sirve para visualizar la tabla temporal. Es un historial volátil de las

Botón
palabras, frases q se han escrito en el cuadro de texto, es un cursor.

Código Fuente.
Command3.Click()
*!* Desplegar la tabla para ver su contenido
Browse


En OptionGroup2 Las opciones Negrita, subrayado.



5

Sirve para dar un formato a la marquesina deslizándose.

Código Fuente.
OptionGroup2.Option1.Click()
thisform.label2.FontBold = .T.
thisform.label3.FontBold = .T.
thisform.label2.FontUnderline = .F.
thisform.label3.FontUnderline = .F.
OptionGroup2.Option2.Click()
thisform.label2.FontBold = .F.
thisform.label3.FontBold = .F.
thisform.label2.FontUnderline = .T.
thisform.label3.FontUnderline = .T.

Segunda Entrega de Marquesina.

II Forma de realizar una Marquesina.



Por botón el cual ingresas el texto a deslizar y presionas el botón, la segunda opción es
interactivamente, es decir mientras escribes el texto lo q haz escrito se va deslizando en el
formulario.

Form1.Init()
salto = .T.
thisform.ShowTips = .T.
thisform.pageframe1.page2.Enabled = .F.
PUBLIC x,y
STORE 1 TO x,y
Implemento un nuevo método abrir() El PageFrame Principal (pagina 1) se deshabilita solo es
control de lectura.

Form1.Abrir()
thisform.pageframe1.page2.Enabled = .T.
thisform.pageframe1.ActivePage = 2
thisform.pageframe1.page1.Enabled = .F.
thisform.pageframe1.page2.text1.SetFocus()
Siguiente método regresa() Similar al anterior método El PageFrame



6

Principal se habilita, y el PageFrame Opción se deshabilita.

Form1.Regresa()
thisform.pageframe1.page1.Enabled = .T.
thisform.pageframe1.page2.Enabled = .F.
thisform.pageframe1.ActivePage = 1
thisform.pageframe1.page1.optiongroup1.Value = 0
thisform.pageframe1.page1.optiongroup1.option1.SetFocus()
Método creado para validar el campo de texto verifica si existe algún texto escrito o no.

Form.Validar()
LOCAL a
a = thisform.pageframe1.page2.text1.Value
IF ISBLANK(a) THEN

= MESSAGEBOX("El campo texto esta vació, imposible continuar.",0+16+0,"Error al

validar.")
thisform.pageframe1.page2.text1.SetFocus()

ELSE

RETURN .F.

RETURN .T.

ENDIF

Además se inserta un control Timer()
Timer1.Timer()
x = x + 1
y = y + 1
thisform.label4.Left = x
IF thisform.label4.left == 350 THEN

x = 1

ENDIF



7



En el PageFrame Pagina1 Coloco 1 OptionGroup, el cual me servirá para escoger cualquiera de
las opciones siguientes.



Esta opción esta indicada anteriormente.
Aquí el código.
OptionGroup1.InteractiveChange()
LOCAL a,b,c,d,e
a = thisform.pageframe1.page1.optiongroup1.option1.Value
b = thisform.pageframe1.page1.optiongroup1.option2.Value
IF a == 1 THEN

thisform.pageframe1.page2.command1.Visible = .T.
thisform.abrir()

ELSE

IF b == 1 THEN

thisform.abrir()
thisform.pageframe1.page2.command1.Visible = .F.

ENDIF

ENDIF
Si escoges la primera opción Botón
La pantalla es la siguiente..

Tendrás q escribir el texto a mostrar y luego presionar el botón Agregar.
Código.
Command1.click()
IF NOT thisform.validar() THEN



RETURN .F.

ENDIF
LOCAL a,b
a = thisform.pageframe1.page2.text1.Value
thisform.label4.Caption = ALLTRIM(a)



8

El botón
interactivamente..
La segunda opción grafico siguiente.

sirve para regresar a la primera pagina del PageFrame(). Para q escojas la opción

Mientras tú escribes va a aparecer el texto escrito en el formulario.

Text1.InteractiveChange()
LOCAL a
a = thisform.pageframe1.page2.text1.Value
IF thisform.pageframe1.page2.command1.Visible = .F. then

thisform.label4.Caption = ALLTRIM(a)

ENDIF
Aparecerá el texto y/o frase q escribes.

Sin la necesidad de presionar ningún botón.



9



Aquí el código para variables publicas, comportamiento de la ventana principal de VFP,
llamado de programas, menus, etc.

ComportarMarquesina.prg()

PUBLIC salto
salto = .F.
*!* Asigno un nombre a la ventana principal de VFP 8.0
_screen.Caption = "Marquesina"
*!* Tamaño maximizado de la ventana en VFP 8.0
_screen.WindowState = 2
*!* Estas opciones se las puede realizar en versiones
*!* anteriores de VFP
*!*
*!* Hago el llamado al programa prgsets.prg()
DO prgsets.prg
*!* Hago el llamado al manu menumarquesina.MPR()
DO menumarquesina.MPR
*DO FORM marquesinas.scx
*!* Oculto el menu por defecto de VFP
HIDE MENU ALL
*!* Lee los eventos este es necesario para iniciar la aplicación
READ EVENTS

Prgsets.prg()


cDir = SYS(5) + SYS(2003) + "\MenusD"
SET DEFAULT TO SYS(5) +SYS(2003)
SET PATH TO (cDir)
SET CONFIRM ON
SET CENTURY ON
SET CENTURY TO 19 ROLLOVER 95

SET DELETED ON
SET DECIMALS TO 0
SET ESCAPE OFF
SET EXACT ON
SET EXCLUSIVE OFF
SET FULLPATH OFF
SET NOTIFY OFF
SET OPTIMIZE ON
SET REFRESH TO 0
SET REPROCESS TO AUTOMATIC
SET STATUS OFF
SET STATUS BAR OFF
SET SYSMENU OFF
SET TALK OFF
ON ERROR
HIDE MENU ALL

Salir.prg()
CLEAR
CLOSE ALL
CANCEL



10

SET SYSMENU TO DEFAULT

A este programa lo puedes utilizar sin utilizar el menú.

Este código sirve para mejorar tus presentaciones; es decir código para carpintería.
Si tienes alguna mejora o alguna inquietud respecto a este código:



"LA MUERTE ESTÁ TAN SEGURA DE VENCER QUE NOS DA TODA UNA VIDA DE VENTAJA"

jfpanchogp@gmail.com

11
  • Links de descarga
http://lwp-l.com/pdf18004

Comentarios de: Visual FoxPro 8.0 - Marquesinas (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad