Jump to content
Fivewin Brasil

Colocar Calendário na tela principal do sistema ou seja escrever na imagem


marcioe

Recommended Posts




DEFINE BITMAP oImgFundo FILE "BMP\FUNDO.BMP"
DEFINE BITMAP oImgLogo FILE "BMP\CALENDARIO.BMP"

DEFINE WINDOW oWndMain FROM 1, 1 TO 780, 1024 PIXEL TITLE "Sistema de Controle de Lojas" ;
MENU BuildMenu() ICON oIco


...
...
...




ACTIVATE WINDOW oWndMain MAXIMIZED On Paint Fundo(oWndMain, hDC, oImgFundo, oImgLogo )


*
//--------------------------------------------------------------------------


FUNCTION FUNDO( oWndMain, hDC, oImg, oImg1)


LOCAL nTop := (oWndMain:nHeight()-oImg1:nHeight) / 2
LOCAL nLeft := (oWndMain:nWidth()-oImg1:nWidth ) / 2


PALBMPDRAW( hDC, 0, 0, oImg:hBitmap, , oWndMain:nWidth, oWndMain:nHeight-75 )


DrawMasked( hDC, oImg1:hBitmap, nTop, nLeft )


RETURN NIL


Link to comment
Share on other sites

Amigo,

obrigado por responder, mas eu quero colocar um calendário dinamico, ou seja que ele atualize com a data do PC.

Não entendi onde ele atualizará o mes por exemplo com o que voce postou, mas mesmo assim agradeço. e me desculpa se não entendi a sua resposta

Link to comment
Share on other sites

Tenho um calendário bem simples, que talvez sirva de base.

TELA.jpg

No PRG principal

//---------------- INICIO DO CALENDÁRIO
dDia := ctod("01/"+STRZERO(MONTH(date()),2)+"/"+STRZERO(YEAR(date()),4))
MESA :=""
DATAEXT(DATE())
DATAATUAL := STRZERO(DAY(DATE()),2)+" de "+mesa+" de "+STRZERO(YEAR(DATE()),4)
cDia :=""
UltDiaMes(date())
//---------------- FUNDO DOA TELA
DEFINE BITMAP oBmp FILE "figuras\backg.bmp"
DEFINE DIALOG oWnd1 RESOURCE "CALENDA" of oWnd COLOR RGB (000,000,000) ,RGB (192,192,192)
REDEFINE SAY oSAYCAL38 PROMPT DATAATUAL ID 38 FONT oFontCALE2 COLOR RGB (000,000,000) ,RGB (255,255,255)
REDEFINE SAY oSAYCAL39 PROMPT "" ID 39 FONT oFontCALE2 COLOR RGB (255,255,255) ,RGB (255,255,255)
REDEFINE SAY oSAYCAL40 PROMPT "DOM" ID 40 FONT oFontCALE3 COLOR RGB (000,000,000) ,RGB (255,255,255)
REDEFINE SAY oSAYCAL41 PROMPT "SEG" ID 41 FONT oFontCALE3 COLOR RGB (000,000,000) ,RGB (255,255,255)
REDEFINE SAY oSAYCAL42 PROMPT "TER" ID 42 FONT oFontCALE3 COLOR RGB (000,000,000) ,RGB (255,255,255)
REDEFINE SAY oSAYCAL43 PROMPT "QUA" ID 43 FONT oFontCALE3 COLOR RGB (000,000,000) ,RGB (255,255,255)
REDEFINE SAY oSAYCAL44 PROMPT "QUI" ID 44 FONT oFontCALE3 COLOR RGB (000,000,000) ,RGB (255,255,255)
REDEFINE SAY oSAYCAL45 PROMPT "SEX" ID 45 FONT oFontCALE3 COLOR RGB (000,000,000) ,RGB (255,255,255)
REDEFINE SAY oSAYCAL46 PROMPT "SAB" ID 46 FONT oFontCALE3 COLOR RGB (000,000,000) ,RGB (255,255,255)
if Dow(dDia)=1
id1 := 1
elseif Dow(dDia)=2
id1 := 2
elseif Dow(dDia)=3
id1 := 3
elseif Dow(dDia)=4
id1 := 4
elseif Dow(dDia)=5
id1 := 5
elseif Dow(dDia)=6
id1 := 6
elseif Dow(dDia)=7
id1 := 7
endif
REDEFINE SAY oSAYCAL01 prompt "01" ID id1+00 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL02 prompt "02" ID id1+01 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL03 prompt "03" ID id1+02 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL04 prompt "04" ID id1+03 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL05 prompt "05" ID id1+04 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL06 prompt "06" ID id1+05 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL07 prompt "07" ID id1+06 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL08 prompt "08" ID id1+07 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL09 prompt "09" ID id1+08 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL10 prompt "10" ID id1+09 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL11 prompt "11" ID id1+10 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL12 prompt "12" ID id1+11 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL13 prompt "13" ID id1+12 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL14 prompt "14" ID id1+13 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL15 prompt "15" ID id1+14 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL16 prompt "16" ID id1+15 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL17 prompt "17" ID id1+16 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL18 prompt "18" ID id1+17 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL19 prompt "19" ID id1+18 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL20 prompt "20" ID id1+19 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL21 prompt "21" ID id1+20 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL22 prompt "22" ID id1+21 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL23 prompt "23" ID id1+22 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL24 prompt "24" ID id1+23 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL25 prompt "25" ID id1+24 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL26 prompt "26" ID id1+25 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL27 prompt "27" ID id1+26 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
REDEFINE SAY oSAYCAL28 prompt "28" ID id1+27 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
if cDia > 28
REDEFINE SAY oSAYCAL29 prompt "29" ID id1+28 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
endif
if cDia > 29
REDEFINE SAY oSAYCAL30 prompt "30" ID id1+29 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
endif
if cDia > 30
REDEFINE SAY oSAYCAL31 prompt "31" ID id1+30 of oWnd1 FONT oFontCALE1 COLOR RGB (0,0,0),RGB (255,255,255)
endif
ACTIVATE DIALOG oWnd1 nowait ON PAINT (DrawBitmap(oWnd1:hDC,oBmp:hBitmap,0,0,oWnd1:nWidth,oWnd1:nHeight),;
oWnd1:Move( nResVert-(nResVert-208),nResHoriz-372 ) )
oFontCALE1:END()
oFontCALE2:END()
oFontCALE3:END()
//---------------- FIM DO CALENDÁRIO
//-------------- PEGAR MES POR EXTENSSO
FUNCTION DATAEXT(DIIA)
if Month(DIIA)=1
mesa:="janeiro"
elseif Month(Date())=2
mesa:="fevereiro"
elseif Month(Date())=3
mesa:="março"
elseif Month(Date())=4
mesa:="abril"
elseif Month(Date())=5
mesa:="maio"
elseif Month(Date())=6
mesa:="junho"
elseif Month(Date())=7
mesa:="julho"
elseif Month(Date())=8
mesa:="agosto"
elseif Month(Date())=9
mesa:="setembro"
elseif Month(Date())=10
mesa:="outubro"
elseif Month(Date())=11
mesa:="novembro"
elseif Month(Date())=12
mesa:="dezembro"
endif
RETURN ( MESA )
//------------------- VERIFICA O ULTIMO DIA DO MES
FUNCTION UltDiaMes(dData1)
LOCAL nAno:=0, nMes:=0, dData2:=CTOD("")
dData1:=CTOD("01"+SUBSTR(DTOC(dData1),3))
nAno := YEAR(dData1)
nMes := MONTH(dData1)
IF MONTH(dData1)==12
dData2:= CTOD( "01/01/"+STRZERO(nAno+1,4) )
ELSE
dData2:= CTOD( "01/"+STRZERO(nMes+1,2)+"/"+STRZERO(nAno,4) )
ENDIF
cDia :=dData2-dData1
RETURN( CTOD(StrZero(cDia,2)+SUBSTR(DTOC(dData1),3)) ) // Eroni
RC do calendário
CALENDA DIALOG 382, 15, 200, 193
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE
FONT 8, "MS Sans Serif"
{
LTEXT "39", 39, 5, 21, 190, 168, WS_BORDER | WS_GROUP
CTEXT "DOM", 40, 8, 23, 22, 8
CTEXT "SEG", 41, 35, 23, 22, 8
CTEXT "TER", 42, 62, 23, 22, 8
CTEXT "QUA", 43, 89, 23, 22, 8
CTEXT "QUI", 44, 116, 23, 22, 8
CTEXT "SEX", 45, 143, 23, 22, 8
CTEXT "SAB", 46, 170, 23, 22, 8
CTEXT "38", 38, 5, 3, 190, 17
CTEXT "", 1, 8, 34, 22, 22
CTEXT "", 2, 35, 34, 22, 22
CTEXT "", 3, 62, 34, 22, 22
CTEXT "", 4, 89, 34, 22, 22
CTEXT "", 5, 116, 34, 22, 22
CTEXT "", 6, 143, 34, 22, 22
CTEXT "", 7, 170, 34, 22, 22
CTEXT "", 8, 8, 60, 22, 22
CTEXT "", 9, 35, 60, 22, 22
CTEXT "", 10, 62, 60, 22, 22
CTEXT "", 11, 89, 60, 22, 22
CTEXT "", 12, 116, 60, 22, 22
CTEXT "", 13, 143, 60, 22, 22
CTEXT "", 14, 170, 60, 22, 22
CTEXT "", 15, 8, 86, 22, 22
CTEXT "", 16, 35, 86, 22, 22
CTEXT "", 17, 62, 86, 22, 22
CTEXT "", 18, 89, 86, 22, 22
CTEXT "", 19, 116, 86, 22, 22
CTEXT "", 20, 143, 86, 22, 22
CTEXT "", 21, 170, 86, 22, 22
CTEXT "", 22, 8, 112, 22, 22
CTEXT "", 23, 35, 112, 22, 22
CTEXT "", 24, 62, 112, 22, 22
CTEXT "", 25, 89, 112, 22, 22
CTEXT "", 26, 116, 112, 22, 22
CTEXT "", 27, 143, 112, 22, 22
CTEXT "", 28, 170, 112, 22, 22
CTEXT "", 29, 8, 138, 22, 22
CTEXT "", 30, 35, 138, 22, 22
CTEXT "", 31, 62, 138, 22, 22
CTEXT "", 32, 89, 138, 22, 22
CTEXT "", 33, 116, 138, 22, 22
CTEXT "", 34, 143, 138, 22, 22
CTEXT "", 35, 170, 138, 22, 22
CTEXT "", 36, 8, 164, 22, 22
CTEXT "", 37, 35, 164, 22, 22
}
Link to comment
Share on other sites

pessoal tá quase funcionando blz

já deu uma outra aparencia

para quem desejar fazer o código é simples demais

* Tem que colocar essa include
#include "calendar.ch"




	dDate1 = Date()
 
 	@ 500, 010 CALENDAR oDtp1 VAR dDate1  OF oW_Principal PIXEL  SIZE 220, 150 

16icghy.jpg

Legal!!!

Você pode me dá a idéia de colocar o calendario na tela assim? é que para ser utilizado como? tipo assim agendar algo?

Link to comment
Share on other sites

Nesse caso especifico é apenas para exibir mesmo, a pedido de um cliente. Pois ele gostaria de ter o calendário a mão, e ao Desktop do sistema fica legal.

Mas é uma ideia que se ao clicar no dia ela vá para a agenda de compromissos, etc.

Vamos trocando figurinhas e ver no que podemos melhorar !

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...