Tray System

Tray System

Postby goosfancito » Mon Oct 31, 2005 6:42 am

Estimados:

Quiero hacer que cuando mi programa en xHarbour este corriendo se muestre en el systray (al lado del reloj, por ejemplo) un ícono indicando que esta siendo utilizado el programa.

Me pueden dar una idea del mismo.

Gracias.
User avatar
goosfancito
 
Posts: 1954
Joined: Fri Oct 07, 2005 7:08 pm

Postby Antonio Linares » Mon Oct 31, 2005 6:47 am

Gustavo,

Revisa el ejemplo samples\TestTray.prg.

De paso, te pido que uses una foto personal tuya como "avatar". Gracias.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41342
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby goosfancito » Mon Oct 31, 2005 7:50 am

[quote="Antonio Linares"]Gustavo,

Revisa el ejemplo samples\TestTray.prg.

De paso, te pido que uses una foto personal tuya como "avatar". Gracias.[/quote]

Con respecto a la foto, puse esa porque pensé que habias autorizado a usar cualquiera, ya que vi que otros usuarios la tienen.
User avatar
goosfancito
 
Posts: 1954
Joined: Fri Oct 07, 2005 7:08 pm

Postby Antonio Linares » Mon Oct 31, 2005 9:27 am

Gustavo,

Estamos pidiéndole a todos los usuarios que proporcionen una foto personal. Las que no sean fotos personales se borrarán en breve.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41342
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby DanielPuente » Mon Oct 31, 2005 2:16 pm

Gustavo:

Static oTray, oTrayMenu
static oTaskBarIcon, oIcon

DEFINE ICON oIco RESOURCE "PETROSUR"

DEFINE WINDOW oWnd FROM 0,0 TO 23, 79 ;
TITLE OEMTOANSI("Petrosur S.R.L. * Actualizador de datos en servidor MYSQL");
ICON oIco ;
MENU BuildMenu();
COLOR CLR_BLACK, RGB(88,102,129)

oWnd:bTaskBar := { | nWParam, nLParam | TaskBar( nWParam, nLParam ) }

ACTIVATE WINDOW oWnd MAXIMIZED ;
ON INIT (SetUpTray(oBmp),IF(LOGIN(),(cLogin:=.T.,Start(), MuestraUsuario()), oWnd:End()));
VALID FINALIZAR(oTray)

Function SetUpTray(oBmp)
Local oIcon

DEFINE ICON oIcon RESOURCE "PETROSUR" //"SANTAC"
oTray := TaskAddIcon( oWnd, oIcon, "Programa Actualizador MYSQL" )

Return NIL

Function RMenu(r,c)
Local oMenu

MENU oMenu POPUP
MENUITEM "Abrir Programa Actualizador MYSQL" ACTION ( oWnd:Show() )
MENUITEM "Cerrar Programa Actualizador MYSQL" ACTION ( oWnd:end() )
ENDMENU

ACTIVATE POPUP oMenu OF oWnd AT r,c
Return NIL

Function TaskBar( nWParam, nLParam )
Local a := array(2)

static lWorking := .f.

if ! lWorking
lWorking = .t.
do case
case nLParam == WM_LBUTTONUP

case nLParam == WM_RBUTTONUP
a := GetCursorPos()
a = ScreenToClient( oWnd:hWnd, a )

RMenu(a[1],a[2])
endcase

lWorking = .f.
endif

return nil

FUNCTION FINALIZAR()

LOCAL RET:=.F.

SALIR:=99

IF cProcesando
ELSE
RET:=.T.
ENDIF
if oMysql # nil .and. ret
oMysql:Close()
endif
if ret
TaskDelIcon( oTray )
IF oTmr # nil
oTmr:Deactivate()
ENDIF

endif

RETURN RET

Saludos,
Daniel Puente
Mar del Plata, Argentina
danielpuente@speedy.com.ar
puenteda@hotmail.com
DanielPuente
 
Posts: 108
Joined: Sun Oct 09, 2005 6:12 pm
Location: Mar del Plata - Argentina

Grac ias a todos.

Postby goosfancito » Mon Oct 31, 2005 3:59 pm

Tema cerrado.
User avatar
goosfancito
 
Posts: 1954
Joined: Fri Oct 07, 2005 7:08 pm


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: cmsoft and 14 guests