Una sobre la clase TTOAST

Una sobre la clase TTOAST

Postby JoseAlvarez » Sat Aug 26, 2023 1:25 am

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 view  RUN
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: 795
Joined: Sun Nov 09, 2014 5:01 pm

Re: Una sobre la clase TTOAST

Postby JoseAlvarez » Mon Aug 28, 2023 12:45 pm

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
JoseAlvarez
 
Posts: 795
Joined: Sun Nov 09, 2014 5:01 pm

Re: Una sobre la clase TTOAST

Postby karinha » Mon Aug 28, 2023 6:55 pm

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
karinha
 
Posts: 7827
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Una sobre la clase TTOAST

Postby JoseAlvarez » Mon Aug 28, 2023 7:40 pm

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
JoseAlvarez
 
Posts: 795
Joined: Sun Nov 09, 2014 5:01 pm

Re: Una sobre la clase TTOAST

Postby cnavarro » Tue Aug 29, 2023 2:03 am

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 view  RUN

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
cnavarro
 
Posts: 6548
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Una sobre la clase TTOAST

Postby anserkk » Sat Sep 02, 2023 5:54 am

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 view  RUN

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
anserkk
 
Posts: 1332
Joined: Fri Jun 13, 2008 11:04 am
Location: Kochi, India

Re: Una sobre la clase TTOAST

Postby cnavarro » Sat Sep 02, 2023 6:50 pm

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
cnavarro
 
Posts: 6548
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Una sobre la clase TTOAST

Postby albeiroval » Sun Sep 03, 2023 2:34 pm

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

Albeiro Valencia
www.avcsistemas.com
User avatar
albeiroval
 
Posts: 373
Joined: Tue Oct 16, 2007 5:51 pm
Location: Barquisimeto - Venezuela

Re: Una sobre la clase TTOAST

Postby JoseAlvarez » Sun Sep 03, 2023 6:48 pm

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: 795
Joined: Sun Nov 09, 2014 5:01 pm

Re: Una sobre la clase TTOAST

Postby JoseAlvarez » Sun Sep 03, 2023 6:50 pm

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
JoseAlvarez
 
Posts: 795
Joined: Sun Nov 09, 2014 5:01 pm

Re: Una sobre la clase TTOAST

Postby cnavarro » Tue Sep 05, 2023 12:06 am

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
cnavarro
 
Posts: 6548
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Una sobre la clase TTOAST

Postby leandro » Tue Sep 05, 2023 12:09 am

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 view  RUN

// 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
leandro
 
Posts: 1676
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: Una sobre la clase TTOAST

Postby JoseAlvarez » Tue Sep 05, 2023 2:27 am

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
JoseAlvarez
 
Posts: 795
Joined: Sun Nov 09, 2014 5:01 pm

Re: Una sobre la clase TTOAST

Postby cnavarro » Thu Sep 07, 2023 10:43 am

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 view  RUN

// 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 view  RUN

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, nTime, lUp, bRet, lLeft, lAlert, lShadow,;
   //                  nOffY, 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
cnavarro
 
Posts: 6548
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Una sobre la clase TTOAST

Postby leandro » Mon Sep 11, 2023 10:38 pm

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) ]
User avatar
leandro
 
Posts: 1676
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Next

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 44 guests