Page 1 of 1
ot: cementerio del futuro
Posted: Thu Dec 27, 2018 1:02 pm
by wilsongamboa
Buenos dias a todos
comento el tema
me han nombrado asesor informatico de una sobrina mia que tiene 7 años, ella ha ideado un futuro cementerio donde en el suelo ( tierra ) se encuentra un parque donde la gente se distrae y los difuntos ( muertos ) estan flotando en unas capsulas con sus cenizas en el segundo piso y en los pisos superiores ( o algo asi)
La pregunta concreta es
- se puede en Fw generar una especie de cielo ( negro ) donde esten flotando unas capsulas ( blancas ) mismas que estan asociadas a la informacion de la persona y que contiene su cenizas
- si doy click en una capsula aparecera la informacion completa de la persona
perdon el off topic
soy muy malo en esto de lo visual
muchas gracias si alguien me da una idea
saludos cordiales
y feliz navidad a todos
Re: ot: cementerio del futuro
Posted: Thu Dec 27, 2018 5:52 pm
by Marcelo Via Giglio
Hola,
lo veo sencillo, creas una ventana con fondo negro, defines tus capsulas, bmps, tus las diseñas (dibujas), las defines en la ventana en alguna posición, incluso puedes hacer que parezcan que flotan (timer) y defines un evento cuando hagas click en ellas.
Solo una idea para madurar
saludos
Marcelo
Re: ot: cementerio del futuro
Posted: Wed Jan 02, 2019 5:57 pm
by wilsongamboa
Muchas gracias MArcelo con tu idea he hecho esto, pero quisiera si alguien me da una idea de como hacerles flotar a los botones muchas gracias y un FELIZ año a todos
Code: Select all
#include 'fivewin.ch'
static nVeces
function main()
local oWnd
local oBrush
local nR := 0
local nG := 0
local nB := 0
local oTmr
define brush oBrush color nRGB( nR, nG, nB )
define window oWnd title 'cementerio futuro Katrin Gamboa' //STYLE NOSYSMENU
define timer oTmr interval 2500 ACTION MakeSome( oWnd ) OF oWnd
SET BRUSH OF oWnd TO oBrush
ataudes( oWnd )
ACTIVATE TIMER oTmr
activate window oWnd center //on init MakeSome( oWnd )
return nil
function MakeSome( oWnd )
if empty( nVeces )
nVeces = 0
end
mueveataudes( oWnd )
return nil
function ataudes( oWnd )
@ 05 , 05 BTNBMP PROMPT "At2345" SIZE 100,40 PIXEL OF oWnd FLAT ;
ACTION ( msginfo('Wilson Gamboa Nacio en Banios murio en Quito' ) )
@ 05 + 45 , 05 BTNBMP PROMPT "At2346" SIZE 100,40 PIXEL OF oWnd FLAT ;
ACTION ( msginfo('Julio Pazos Nacio en Quito murio en Quito' ) )
@ 05 + 45 * 2, 05 BTNBMP PROMPT "At2347" SIZE 100,40 PIXEL OF oWnd FLAT ;
ACTION ( msginfo('Alfonso Espinoza de los Monteros nacio en Quito NUNCA MORIRA!!' ) )
@ 05 + 45 * 3, 05 BTNBMP PROMPT "At2348" SIZE 100,40 PIXEL OF oWnd FLAT ;
ACTION ( msginfo('Alfonso Espinoza de los Monteros nacio en Quito NUNCA MORIRA!!' ) )
@ 05 + 45 * 4, 05 BTNBMP PROMPT "At2349" SIZE 100,40 PIXEL OF oWnd FLAT ;
ACTION ( msginfo('Alfonso Espinoza de los Monteros nacio en Quito NUNCA MORIRA!!' ) )
return nil
function mueveataudes( oWnd )
local n := 10
local i
local oControl
++nVeces
if nVeces % 2 == 0 //si es par
n = -n
else
n = n
end
for i = 1 to len( oWnd:aControls )
oControl = oWnd:aControls[i]
oControl:nTop = oControl:nTop + n
oControl:nLeft = oControl:nLeft + n
oControl:refresh()
//oControl:nWidth = oControl:nWidth + n
//oControl:nHeight = oControl:nHeight + n
next
return nil
https://ibb.co/0hnmRdP
Re: ot: cementerio del futuro
Posted: Wed Jan 02, 2019 7:11 pm
by Marcelo Via Giglio
Hola,
una idea
Code: Select all
#include 'fivewin.ch'
static nVeces, aTrayectoria := {{1,1},{1,1},{1,1},{0,1},{0,1},{-1,1},{-1,1},{-1,1},{-1,-1},{-1,-1},{-1,-1},{0,-1},{0,-1},{1,-1},{1,-1},{1,-1}}, ;
aPos := {0,1,2,3,4}
function main()
local oWnd
local oBrush
local nR := 0
local nG := 0
local nB := 0
local oTmr
define brush oBrush color nRGB( nR, nG, nB )
define window oWnd title 'cementerio futuro Katrin Gamboa' //STYLE NOSYSMENU
define timer oTmr interval 150 ACTION MakeSome( oWnd ) OF oWnd
SET BRUSH OF oWnd TO oBrush
ataudes( oWnd )
ACTIVATE TIMER oTmr
activate window oWnd center //on init MakeSome( oWnd )
return nil
function MakeSome( oWnd )
if empty( nVeces )
nVeces = 0
end
mueveataudes( oWnd )
return nil
function ataudes( oWnd )
@ 05 , 05 BTNBMP PROMPT "At2345" SIZE 100,40 PIXEL OF oWnd FLAT ;
ACTION ( msginfo('Wilson Gamboa Nacio en Banios murio en Quito' ) )
@ 05 + 45 , 05 BTNBMP PROMPT "At2346" SIZE 100,40 PIXEL OF oWnd FLAT ;
ACTION ( msginfo('Julio Pazos Nacio en Quito murio en Quito' ) )
@ 05 + 45 * 2, 05 BTNBMP PROMPT "At2347" SIZE 100,40 PIXEL OF oWnd FLAT ;
ACTION ( msginfo('Alfonso Espinoza de los Monteros nacio en Quito NUNCA MORIRA!!' ) )
@ 05 + 45 * 3, 05 BTNBMP PROMPT "At2348" SIZE 100,40 PIXEL OF oWnd FLAT ;
ACTION ( msginfo('Alfonso Espinoza de los Monteros nacio en Quito NUNCA MORIRA!!' ) )
@ 05 + 45 * 4, 05 BTNBMP PROMPT "At2349" SIZE 100,40 PIXEL OF oWnd FLAT ;
ACTION ( msginfo('Alfonso Espinoza de los Monteros nacio en Quito NUNCA MORIRA!!' ) )
return nil
function mueveataudes( oWnd )
local n := 10
local i
local oControl
for i := 1 TO 5
aPos[i] := ( aPos[i] + 1 ) % LEN( aTrayectoria ) + 1
next
for i = 1 to len( oWnd:aControls )
oControl = oWnd:aControls[i]
oControl:nTop = oControl:nTop + aTrayectoria[aPos[i],1]
oControl:nLeft = oControl:nLeft + aTrayectoria[aPos[i],2]
oControl:refresh()
//oControl:nWidth = oControl:nWidth + n
//oControl:nHeight = oControl:nHeight + n
next
return nil
saludos
Marcelo Vía
Re: ot: cementerio del futuro
Posted: Thu Jan 03, 2019 12:02 am
by wilsongamboa
Muchas gracias Marcelo funciona super !!