Una sobre la clase TTOAST

User avatar
JoseAlvarez
Posts: 807
Joined: Sun Nov 09, 2014 5:01 pm

Una sobre la clase TTOAST

Post by JoseAlvarez »

Hola a todos.

¿Alguien ha usado la clase TTOAST del master cnavarro?

quisiera saber como usar las imagenes de los mensajes desde recursos. Los ejemplos en el foro solo muestran leyendolos desde disco. No me gusta tener recursos en disco.

Dejo la imagen de muestra, con la flecha roja indico el recurso que estoy leyendo desde disco pero quiero hacerlo desde RC

Image



Acá el codigo simplificado de la funcion.


Code: Select all | Expand

Function Fnct_ShowNotifyOk( oDialog, cText, nLargoCuadro, nAltoCuadro )

   local oTip
   local lLeft := .f.
   local lUp   := .t.
   Local nType := 1
   Local nTone := 255
   Local nTimer:= 4000
   local cBmp  := "c:\xBapp\ServiTec64\Imagenes\bmp\NotifyOk.bmp"

   oTip := TToast():NewToast( nType, cText, cBmp, nLargoCuadro, nAltoCuadro, oDialog, ;
               CLR_GREEN, , CLR_WHITE, nTone, nTimer, lUp, , lLeft )
   oTip:nWRadio   :=6
   oTip:nHRadio   :=6
   oTip:lBtnClose :=.f.
   oTip:lBtnSetup :=.f.
   oTip:lAlert    :=.f.
   oTip:ActivaAlert( oDialog )
   Syswait( 1.0 )

Return nil
 
Quedo atento... Gracias.
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
JoseAlvarez
Posts: 807
Joined: Sun Nov 09, 2014 5:01 pm

Re: Una sobre la clase TTOAST

Post by JoseAlvarez »

Master navarro.

¿Alguna orientacion sobre el tema?

Quedo atento.

Gracias.
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
karinha
Posts: 7885
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil
Contact:

Re: Una sobre la clase TTOAST

Post by karinha »

Esto solo funciona, si mi memoria no me falla, en Windows 10. En Windows 7, los ejemplos \samples no funcionan.

salu2
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
JoseAlvarez
Posts: 807
Joined: Sun Nov 09, 2014 5:01 pm

Re: Una sobre la clase TTOAST

Post by JoseAlvarez »

karinha wrote:Esto solo funciona, si mi memoria no me falla, en Windows 10. En Windows 7, los ejemplos \samples no funcionan.

salu2
Hola amigo Joao.

No sabría decirte. En windows 10 funciona muy bien.

Yo personalmente dejé de montar sistemas en windows 7. Ya es hora de dejarlo ir. Igual que los 32 bits, ya estoy pensando en dejarlos. Apenas pueda adquirir FW64, me olvidaré de .EXE en 32.

Es mi gusto personal. No tengo nada en contra de quien desee seguir usandolos.

Esperare al master navarro a ver si me ayuda. :lol:
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
cnavarro
Posts: 6552
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Una sobre la clase TTOAST

Post by cnavarro »

Jose, por favor, incluye en tu rc cualquier recurso ( yo aqui uso "next" ), prueba el ejemplo que te envio y pon la imagen del toast que obtienes
Gracias señor

Code: Select all | Expand

Function HazAlert204( oWnd, nType )

   local oTip
   local bInit
   local cText
   local cBmp    := "next"
   local lLeft   := .T.
   local lUp     := .T.
   DEFAULT nType := 1

   // oTip := TToast():NewToast( nToast, cText, cBmp, nWidth, nHeight, oWnd, nClrPane, ;
   //                  nClrPane2, nClrText, nLev, nTime, lUp, bRet, lLeft, lAlert, lShadow,;
   //                  nOffY, nOffX )

   cText   := "Message Success Action"
   oTip  := TToast():NewToast( nType, cText, cBmp, 400, 40, oWnd, ;
               CLR_BLUE, , CLR_WHITE, 255, 4000, !lUp, , lLeft, , , , ) //250, -100 )
   oTip:nWRadio    := 6
   oTip:nHRadio    := 6
   oTip:lBtnClose  := .T.
   oTip:lBtnSetup  := .T.
   oTip:ActivaAlert()

Return oTip

//----------------------------------------------------------------------------//


 
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
anserkk
Posts: 1333
Joined: Fri Jun 13, 2008 11:04 am
Location: Kochi, India

Re: Una sobre la clase TTOAST

Post by anserkk »

cnavarro wrote:Jose, por favor, incluye en tu rc cualquier recurso ( yo aqui uso "next" ), prueba el ejemplo que te envio y pon la imagen del toast que obtienes
Gracias señor

Code: Select all | Expand

Function HazAlert204( oWnd, nType )

   local oTip
   local bInit
   local cText
   local cBmp    := "next"
   local lLeft   := .T.
   local lUp     := .T.
   DEFAULT nType := 1

   // oTip := TToast():NewToast( nToast, cText, cBmp, nWidth, nHeight, oWnd, nClrPane, ;
   //                  nClrPane2, nClrText, nLev, nTime, lUp, bRet, lLeft, lAlert, lShadow,;
   //                  nOffY, nOffX )

   cText   := "Message Success Action"
   oTip  := TToast():NewToast( nType, cText, cBmp, 400, 40, oWnd, ;
               CLR_BLUE, , CLR_WHITE, 255, 4000, !lUp, , lLeft, , , , ) //250, -100 )
   oTip:nWRadio    := 6
   oTip:nHRadio    := 6
   oTip:lBtnClose  := .T.
   oTip:lBtnSetup  := .T.
   oTip:ActivaAlert()

Return oTip

//----------------------------------------------------------------------------//
 
As per my test, BMP's from resources are working but PNG, ICO etc from resource file are not working
User avatar
cnavarro
Posts: 6552
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Una sobre la clase TTOAST

Post by cnavarro »

Dear Anser
I tested with .ico, .png and. .jpg also, and run OK for me
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
albeiroval
Posts: 383
Joined: Tue Oct 16, 2007 5:51 pm
Location: Barquisimeto - Venezuela

Re: Una sobre la clase TTOAST

Post by albeiroval »

Jose Alvarez, no sabia que tenia un colega tan cerca. Soy de Barquisimeto
Saludos,
Regards,

Albeiro Valencia
www.avcsistemas.com
User avatar
JoseAlvarez
Posts: 807
Joined: Sun Nov 09, 2014 5:01 pm

Re: Una sobre la clase TTOAST

Post by JoseAlvarez »

Estimado Cristobal, disculpa la tardanza en contestar y gracias por responder.

Haciendo un "copy&paste" de lo que me envias, el resultado es este:

Image

Ya habia probado colcando el recurso de esa manera y tambien con loadbitmaps(getrosources() ) pero no funcionó, la función arroja error.

Application
===========
Path and name: C:\ServiTec64\ServiTec64.exe (64 bits)
Size: 6,944,768 bytes
Compiler version: Harbour 3.2.0dev (r2303091450)
FiveWin version: FWH 21.06
C compiler version: Microsoft Visual C 19.30.30706 (64-bit)
Windows version: 6.2, Build 9200

Time from start: 0 hours 0 mins 13 secs
Error occurred at: 03/09/2023, 14:46:46
Error description: Error BASE/44 Assigned value is wrong class: TTOAST:CBMPLEFT
Args:
[ 1] = N 285549237

Stack Calls
===========
Called from: => TTOAST:_CBMPLEFT( 0 )
Called from: .\source\classes\TTOAST.PRG => TTOAST:NEWTOAST( 0 )
Called from: Prg64\Utilidades64.prg => FNCT_SHOWNOTIFYOK( 527 )
Called from: Prg64\Usuarios64.prg => FNCT_GRABAREDITARUSUARIO( 850 )
Called from: Prg64\Usuarios64.prg => (b)FNCT_EDITARUSUARIO( 783 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:CLICK( 0 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:LBUTTONUP( 0 )
Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT( 0 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:HANDLEEVENT( 0 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 0 )
Called from: .\source\classes\DIALOG.PRG => DIALOGBOXW( 0 )
Called from: .\source\classes\DIALOG.PRG => TDIALOG:ACTIVATE( 0 )
Called from: Prg64\Usuarios64.prg => FNCT_EDITARUSUARIO( 791 )
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
JoseAlvarez
Posts: 807
Joined: Sun Nov 09, 2014 5:01 pm

Re: Una sobre la clase TTOAST

Post by JoseAlvarez »

albeiroval wrote:Jose Alvarez, no sabia que tenia un colega tan cerca. Soy de Barquisimeto
Hola Alveiro, como estas?

que bien !! siempre es bueno saber que se cuenta cerca con personas que amamos FW !!

cualquier cosa puedes contactarme a jalvarez AT neurosistema DOT online
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
cnavarro
Posts: 6552
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Una sobre la clase TTOAST

Post by cnavarro »

Jose, he tratado de enviarte un correo pero me dice que la cuenta no existe
A qué correo he de escribirte ?
Saludos
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
leandro
Posts: 1688
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia
Contact:

Re: Una sobre la clase TTOAST

Post by leandro »

Hola buenas noches que pena la interrupción, pero me gustaría hacer que una toast, apareciera exactamente debajo de un dialogo y que se cerrara cuando el dialogo se cierre, no con timer, es posible?
Image

Code: Select all | Expand

// Our first DialogBox sample

#include "FiveWin.ch"

function Main()

   local oDlg, oIco, cTest := "Hello world!   "

   DEFINE ICON oIco FILE "..\icons\fivewin.ico"

   DEFINE DIALOG oDlg TITLE "I am a DialogBox" COLOR "W+/B" ;
      ICON oIco

   @ 1, 3 GET cTest

   @ 3, 5 BUTTON "&Ok" SIZE 40, 12 ;
      ACTION MsgInfo( "Any action here!" ) DEFAULT

   @ 3, 16 BUTTON "&Cancel" SIZE 40, 12 ACTION oDlg:End()

   ACTIVATE DIALOG oDlg CENTERED ;
      ON INIT HazAlert204() VALID MsgYesNo( "Do you want to end ?" )

return nil


Function HazAlert204(nType)

   local oTip
   local bInit
   local cText
   local cBmp    := "next"
   local lLeft   := .T.
   local lUp     := .T.
   DEFAULT nType := 1

   cText   := "Message Success Action"
   oTip  := TToast():NewToast( nType, cText, cBmp, 400, 40, , ;
               CLR_BLUE, , CLR_WHITE, 255, 4000, !lUp, , lLeft, , , , ) //250, -100 )
   oTip:nWRadio    := 6
   oTip:nHRadio    := 6
   oTip:lBtnClose  := .T.
   oTip:lBtnSetup  := .T.
   oTip:ActivaAlert()

Return oTip
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
JoseAlvarez
Posts: 807
Joined: Sun Nov 09, 2014 5:01 pm

Re: Una sobre la clase TTOAST

Post by JoseAlvarez »

cnavarro wrote:Jose, he tratado de enviarte un correo pero me dice que la cuenta no existe
A qué correo he de escribirte ?
Saludos
Hola cristobal,

Si, desde ayer estoy cambiando de servidor y dns. Debo tener los correos desconectados.

Mandalo por los momentos a

actividades1309 AT gmail

Gracias !
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
cnavarro
Posts: 6552
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Una sobre la clase TTOAST

Post by cnavarro »

leandro wrote:Hola buenas noches que pena la interrupción, pero me gustaría hacer que una toast, apareciera exactamente debajo de un dialogo y que se cerrara cuando el dialogo se cierre, no con timer, es posible?
Image

Code: Select all | Expand

// Our first DialogBox sample

#include "FiveWin.ch"

function Main()

   local oDlg, oIco, cTest := "Hello world!   "

   DEFINE ICON oIco FILE "..\icons\fivewin.ico"

   DEFINE DIALOG oDlg TITLE "I am a DialogBox" COLOR "W+/B" ;
      ICON oIco

   @ 1, 3 GET cTest

   @ 3, 5 BUTTON "&Ok" SIZE 40, 12 ;
      ACTION MsgInfo( "Any action here!" ) DEFAULT

   @ 3, 16 BUTTON "&Cancel" SIZE 40, 12 ACTION oDlg:End()

   ACTIVATE DIALOG oDlg CENTERED ;
      ON INIT HazAlert204() VALID MsgYesNo( "Do you want to end ?" )

return nil


Function HazAlert204(nType)

   local oTip
   local bInit
   local cText
   local cBmp    := "next"
   local lLeft   := .T.
   local lUp     := .T.
   DEFAULT nType := 1

   cText   := "Message Success Action"
   oTip  := TToast():NewToast( nType, cText, cBmp, 400, 40, , ;
               CLR_BLUE, , CLR_WHITE, 255, 4000, !lUp, , lLeft, , , , ) //250, -100 )
   oTip:nWRadio    := 6
   oTip:nHRadio    := 6
   oTip:lBtnClose  := .T.
   oTip:lBtnSetup  := .T.
   oTip:ActivaAlert()

Return oTip
Leandro, sería algo así
Ten en cuenta que el TToast debería cerrarse al hacerlo su "padre", pero si no lo hace, en el valid del dialogo haz una llamada a oTip:End() ( lógicamente la variable oTip debería ser estática )
Fíjate en el valor que le pongo al parametro nTime ( -1 ) y al parámetro nOffY ( -50 ) para sacarlo fuera de los limites del contenedor

Code: Select all | Expand

Function HazAlert204( oWnd, nType )

   local oTip
   local bInit
   local cText
   local cBmp    := "five" 
   //local cBmp    :=  "ico"  
   //local cBmp    := "..\bitmaps\16x16\alert.bmp"
   local lLeft   := .T.
   local lUp     := .T.
   DEFAULT nType := 1

   // oTip := TToast():NewToast( nToast, cText, cBmp, nWidth, nHeight, oWnd, nClrPane, ;
   //                  nClrPane2, nClrText, nLev, [b]nTime[/b], lUp, bRet, lLeft, lAlert, lShadow,;
   //                 [b] nOffY,[/b] nOffX )

   cText   := "Message Success Action"
   oTip  := TToast():NewToast( nType, cText, cBmp, oWnd:nWidth - 24, 40, oWnd, ;
               CLR_BLUE, , CLR_WHITE, 255, -1, !lUp, , lLeft, , , -50, )
   oTip:nWRadio    := 6
   oTip:nHRadio    := 6
   //oTip:lBtnClose  := .T.
   //oTip:lBtnSetup  := .T.
   oTip:ActivaAlert()

Return oTip
 
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
leandro
Posts: 1688
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia
Contact:

Re: Una sobre la clase TTOAST

Post by leandro »

Amigo Cristóbal como siempre, muchas gracias por la ayuda.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
Post Reply