DSay

DSay

Postby VitalJavier » Mon Sep 21, 2015 6:19 pm

Hola a todos

Hace tiempo probe DSay y funciono perfecto para las necesidades que tenia en ese momento
Ahora quiero poner varios letreros deslizando (uno tras otro) pero no se en que momento
termina el primero para poner el segundo y así sucesivamente

Alguien me podría echar la mano

Gracias de antemano.
VitalJavier
 
Posts: 229
Joined: Mon Jun 10, 2013 6:40 pm

Re: DSay

Postby Armando » Mon Sep 21, 2015 6:59 pm

Javier:

Si los textos han de aparecer en el mismo lugar, se me ocurre que hagas un texto largo
con todos los textos que deben aparecer, separados por espacios entre uno y otro.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3076
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: DSay

Postby VitalJavier » Tue Sep 22, 2015 2:45 pm

Armando, un gusto saludarte.

Ya le intente asi como me dices, pero no resulta, se ven como encimados
yo creo por ser tan largo el texto.

y como van a estar cambiando los texto (por eso de las ofertas), tiene que ser
por cada uno.

Saludos.
VitalJavier
 
Posts: 229
Joined: Mon Jun 10, 2013 6:40 pm

Re: DSay

Postby Armando » Tue Sep 22, 2015 3:08 pm

Javier:

También me da gusto saludarte.

Creo que el espacio que debe llevar entre el primero y el segundo texto
debe ser del mismo tamaño que el largo del primero para dar tiempo a
que desaparezca el primero antes de que aparezca el segundo, de esta forma
no se enciman, y así sucesivamente entre el segundo y el tercero, entre el
tercero y el cuarto etc. etc.

Otra posibilidad que se me ocurre "al vuelo" (no la he probado) es que uses
un timer que vaya "de la mano" con la velocidad del control DSAY (SPEED 55)
y en función a ese timer será el texto que muestres. (Espero haberme explicado)

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3076
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: DSay

Postby VitalJavier » Tue Sep 22, 2015 5:19 pm

Armando

Ya probe las 2 opciones pero no funcionan
La primera de un solo texto con espacios al final, como que quiere funcionar pero
no del todo.

Y la del timer, mmmmm no se en que momento cambiar el letrero por que el (55 speed)
es la velocidad con que se mueve el letrero, pero sigo sin saber en que momento termino
de pasar el letrero.

Seguiré intentando y si lo resuelvo ya pondré la solución aquí.

Saludos.
VitalJavier
 
Posts: 229
Joined: Mon Jun 10, 2013 6:40 pm

Re: DSay

Postby karinha » Tue Sep 22, 2015 6:05 pm

Holá, mira se ayuda:

http://www.4shared.com/zip/I0yk-KP4ba/TESTDSAY.html

Necesitas una cuenta en: www.4shared.com

saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7316
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: DSay

Postby VitalJavier » Wed Sep 23, 2015 2:51 pm

Karinha, gracias por el demo

Ya vi el demo, pero ahi solo muestra un mensaje pasando "Texto de Prova A Velocidade Base"
yo tengo una tabla donde tengo 10 mensajes y quiero pasarlos de uno por uno.

El detalle que no se cuando termina de pasar el primero para comenzar a pasar el segundo y asi todos.

Saludos.
VitalJavier
 
Posts: 229
Joined: Mon Jun 10, 2013 6:40 pm

Re: DSay

Postby karinha » Wed Sep 23, 2015 3:20 pm

haga un TIMER y use Hide() y Show() prueba e comente, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7316
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: DSay

Postby VitalJavier » Wed Sep 23, 2015 3:56 pm

Karinha

Code: Select all  Expand view

FUNCTION LLENA_MARQUEZINA   
    MENSAJES->(DbGoTop())
    cSayMz := MENSAJES->NOMBRE
RETURN .T.

FUNCTION MARQUEZINA
    @25,0 DYNAMIC SAY oSayMz VAR cSayMz OF oWin HORIZONTAL SCROLL SPEED RETORNA_SYSP("VELOCIDAD_MARQUEZINA") WRAP RIGHT FONT aLetras[19] SIZE aArea[4]*2,40
    DEFINE TIMER oTimerW INTERVAL 18000 ACTION Actualiza_Marquezina() OF oWin   // Aquí los 18 segundos los conte (ahi termina de pasar el letrero completo)
    oTimerW:Activate()
RETURN .T.

FUNCTION ACTUALIZA_MARQUEZINA
    MENSAJES->(DbSkip())
    IF MENSAJES->(Eof())
        MENSAJES->(DbGoTop())
    ENDIF
    cSayMz := MENSAJES->NOMBRE
    oSayMz:SetText(cSayMz)
    oSayMz:Refresh()
RETURN .T.

 


Solo así lo pude solucionar

Saludos.
VitalJavier
 
Posts: 229
Joined: Mon Jun 10, 2013 6:40 pm

Re: DSay

Postby karinha » Wed Sep 23, 2015 5:28 pm

Muy bién, gracias por compartir la idea.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7316
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: DSay

Postby Armando » Thu Sep 24, 2015 2:50 am

Javier:

Excelente, dos cabezas piensan más que una.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3076
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 49 guests