Clipper On Line • Ver Tópico - Como usar o calendário do windows?
Página 1 de 1

Como usar o calendário do windows?

MensagemEnviado: 13 Mai 2016 10:01
por Daiane
Olá pessoal, estou tentando chamar o calendario do windows e não estou conseguindo

Ja utilizei desta forma:

ACTION WinExec( "Calendar" )


mas no windows 7 não reconhece

esta forma abaixo não é interessante pois trás a tela de alteração do relógio e da data
WinExec( "Control date/time" )


alguém teria alguma outra maneira ?

Como usar o calendário do windows?

MensagemEnviado: 13 Mai 2016 11:57
por Kapiaba
   WinExec( "CONTROL TIMEDATE.CPL" )


abs

Como usar o calendário do windows?

MensagemEnviado: 13 Mai 2016 11:59
por Kapiaba

Como usar o calendário do windows?

MensagemEnviado: 13 Mai 2016 16:02
por Daiane
Na verdade acabei de fazer meu próprio calendário
pois faz tempo que procuro uma forma de chamar do próprio windows e nada

Mas obrigada Kapiaba pela resposta :)

Vou disponibilizar meu código caso alguém precise

*****************************************
* DlgCalendar.prg
* ADD Por Daiane 13/05/2016
*****************************************

#include "FiveWin.ch"

static DlgCalendar

//----------------------------------------------------------------------------//
CLASS DlgCalendar FROM JanDlg
    export:
       METHOD getInstance(oWnd)
       METHOD BuildDlg()     
    hidden:
      METHOD New(oWnd) CONSTRUCTOR
      METHOD DeleteW()
      METHOD Inicializar()
      METHOD Anterior()
      METHOD PosteriorP()
      METHOD DiaDoMes()
      
      DATA cMes,cDiaMes,gDiaMes,gMes,NewData,NewMes
      DATA bAnte,bPosterior,xmm,xaa,cxAno,gxAno
         
ENDCLASS

METHOD getInstance(oWnd) CLASS DlgCalendar

   IF DlgCalendar = nil
      DlgCalendar := ::New(oWnd,"#8029", 0, 0,"Calendario")
   ELSE
      DlgCalendar:oChld:SetFocus()
   ENDIF                                           
return DlgCalendar
//------------------------------------------------------------------------------      

METHOD New(oWind,cIcone,vLarg,vAlt,cTitulo) CLASS DlgCalendar
   super:New(oWind,cIcone,vLarg,vAlt,cTitulo)

   ::NewData := date()
   
   ACTIVATE DIALOG ::oDlg NOMODAL CENTERED;
   VALID ( DlgCalendar:oChld:End() , .t. )
RETURN self

//------------------------------------------------------------------------------   
METHOD BuildDlg() CLASS DlgCalendar
 
DEFINE DIALOG ::oDlg RESOURCE "#2003" OF ::oChld ;
TITLE "Calendario" Color 1, nRGB(209,209,209)


::cDiaMes := ARRAY(37)
::gDiaMes := ARRAY(37)

REDEFINE SAY ID 4031 OF ::oDlg

REDEFINE GET ::gMes VAR ::cMes ID 4037  OF ::oDlg when .f.

REDEFINE GET ::gDiaMes[1] VAR ::cDiaMes[1] ID 4001 OF ::oDlg when .f. UPDATE
REDEFINE GET ::gDiaMes[2] VAR ::cDiaMes[2] ID 4006 OF ::oDlg when .f. UPDATE
REDEFINE GET ::gDiaMes[3] VAR ::cDiaMes[3] ID 4002 OF ::oDlg when .f. UPDATE
REDEFINE GET ::gDiaMes[4] VAR ::cDiaMes[4] ID 4003 OF ::oDlg when .f. UPDATE
REDEFINE GET ::gDiaMes[5] VAR ::cDiaMes[5] ID 4004 OF ::oDlg when .f. UPDATE
REDEFINE GET ::gDiaMes[6] VAR ::cDiaMes[6] ID 4005 OF ::oDlg when .f. UPDATE
REDEFINE GET ::gDiaMes[7] VAR ::cDiaMes[7] ID 4007 OF ::oDlg when .f. UPDATE
 
REDEFINE GET ::gDiaMes[8] VAR ::cDiaMes[8] ID 4008 OF ::oDlg when .f. UPDATE
REDEFINE GET ::gDiaMes[9] VAR ::cDiaMes[9] ID 4013 OF ::oDlg when .f. UPDATE
REDEFINE GET ::gDiaMes[10] VAR ::cDiaMes[10] ID 4009 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[11] VAR ::cDiaMes[11] ID 4010 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[12] VAR ::cDiaMes[12] ID 4011 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[13] VAR ::cDiaMes[13] ID 4012 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[14] VAR ::cDiaMes[14] ID 4014 OF ::oDlg  when .f. UPDATE
 
REDEFINE GET ::gDiaMes[15] VAR ::cDiaMes[15] ID 4015 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[16] VAR ::cDiaMes[16] ID 4020 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[17] VAR ::cDiaMes[17] ID 4016 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[18] VAR ::cDiaMes[18] ID 4017 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[19] VAR ::cDiaMes[19] ID 4018 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[20] VAR ::cDiaMes[20] ID 4019 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[21] VAR ::cDiaMes[21] ID 4021 OF ::oDlg  when .f. UPDATE

REDEFINE GET ::gDiaMes[22] VAR ::cDiaMes[22] ID 4022 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[23] VAR ::cDiaMes[23] ID 4027 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[24] VAR ::cDiaMes[24] ID 4023 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[25] VAR ::cDiaMes[25] ID 4024 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[26] VAR ::cDiaMes[26] ID 4025 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[27] VAR ::cDiaMes[27] ID 4026 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[28] VAR ::cDiaMes[28] ID 4028 OF ::oDlg  when .f. UPDATE

REDEFINE GET ::gDiaMes[29] VAR ::cDiaMes[29] ID 4029 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[30] VAR ::cDiaMes[30] ID 4034 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[31] VAR ::cDiaMes[31] ID 4030 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[32] VAR ::cDiaMes[32] ID 4032 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[33] VAR ::cDiaMes[33] ID 4035 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[34] VAR ::cDiaMes[34] ID 4033 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[35] VAR ::cDiaMes[35] ID 4036 OF ::oDlg  when .f. UPDATE

REDEFINE GET ::gDiaMes[36] VAR ::cDiaMes[36] ID 4040 OF ::oDlg  when .f. UPDATE
REDEFINE GET ::gDiaMes[37] VAR ::cDiaMes[37] ID 4041 OF ::oDlg  when .f. UPDATE

   REDEFINE GET ::gxAno VAR ::cxAno ID 4045 OF ::oDlg  when .f. UPDATE

   REDEFINE BUTTONBMP ::bAnte   ID 4039 OF ::oDlg BITMAP "#7049";   
   ACTION ::Anterior() UPDATE
   REDEFINE BUTTONBMP ::bAnte   ID 4038 OF ::oDlg BITMAP "#7050";   
   ACTION ::PosteriorP() UPDATE

   REDEFINE BUTTON ::bCancelar   ID 4044 ACTION DlgCalendar:oDlg:End() UPDATE CANCEL

   ::inicializar()

return    
//-----------------------------------------------------------------------------
METHOD DeleteW() CLASS DlgCalendar
   DlgCalendar := nil
return .T.

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

METHOD Anterior() CLASS DlgCalendar
   yaux := 0
   xdate := ctod("")
     xday   := day(::NewData)
   xmonth := month(::NewData) - 1
   xyear  := year(::NewData)
   if xmonth < 1
      xmonth := 12
      xyear--
   endif    
   xdate := ctod(str(xday,2)+"/"+str(xmonth,2)+"/"+str(xyear))
   ::NewData := xdate
   ::cMes :=  Mfolha():Meses(::NewData)
   ::gMes:Refresh()
   ::xmm:= MONTH(::NewData)
   ::xaa:= left(dtos(::NewData),4)
   ::cxAno := ::xaa
   ::gxAno:Refresh()
   yCont := ::DiaDoMes()
   yUltimoDia := ULTIMODIA("/"+STRZERO(::xmm,2)+"/"+alltrim(::xaa))
    FOR i := 1 to 37
       if i >= yCont  .and. yaux <= (day(yUltimoDia)-1)
          yaux++
          ::cDiaMes[i] := alltrim(str(yaux))
       else
          ::cDiaMes[i] := space(2)
       endif   
   NEXT
   FOR i := 1 to 37
       ::gDiaMes[i]:Refresh()
   NEXT
return
//------------------------------------------------------------------------------      
METHOD PosteriorP() CLASS DlgCalendar
   xaux := 0
   ::NewData := addmonth(::NewData)
   ::cMes :=  Mfolha():Meses(::NewData)
   ::gMes:Refresh()
   ::NewMes := ALLTRIM(STR(MONTH(::NewData)))
   ::xmm:= MONTH(::NewData)
   ::xaa:= left(dtos(::NewData),4)
    ::cxAno := ::xaa
   ::gxAno:Refresh()
   xCont := ::DiaDoMes()
   xUltimoDia := ULTIMODIA("/"+STRZERO(::xmm,2)+"/"+alltrim(::xaa))
    FOR i := 1 to 37
       if i >= xCont  .and. xaux <= (day(xUltimoDia)-1)
          xaux++
          ::cDiaMes[i] := alltrim(str(xaux))
       else
          ::cDiaMes[i] := space(2)
       endif   
   NEXT
   FOR i := 1 to 37
       ::gDiaMes[i]:Refresh()
   NEXT
return
//------------------------------------------------------------------------------      
METHOD inicializar() CLASS DlgCalendar
   xaux := 0
   ::NewData := date()
   ::cMes :=  Mfolha():Meses(::NewData)
   ::gMes:Refresh()
   ::NewMes := ALLTRIM(STR(MONTH(::NewData)))
   ::xmm:= MONTH(::NewData)
   ::xaa:= left(dtos(::NewData),4)
   ::cxAno := ::xaa
   ::gxAno:Refresh()
   xCont := ::DiaDoMes()
   xUltimoDia := ULTIMODIA("/"+STRZERO(::xmm,2)+"/"+alltrim(::xaa))
    FOR i := 1 to 37
       if i >= xCont  .and. xaux <= (day(xUltimoDia)-1)
          xaux++
          ::cDiaMes[i] := alltrim(str(xaux))
       else
          ::cDiaMes[i] := space(2)
       endif   
   NEXT
   FOR i := 1 to 37
       ::gDiaMes[i]:Refresh()
   NEXT

return .T.
//-------------------------------------------------------------------------------                                       
METHOD DiaDoMes() CLASS DlgCalendar
     
   xDiaSemana := CDOW(ctod("01/"+ alltrim(str(::xmm)) + "/"+left(dtos(::NewData),4)))
   xDia := 1
   if xDiaSemana = "Monday"
      xDia := 2
   elseif xDiaSemana = "Tuesday"
      xDia := 3
   elseif xDiaSemana = "Wednesday"
      xDia := 4
   elseif xDiaSemana = "Thursday"
      xDia := 5
   elseif xDiaSemana = "Friday"
      xDia := 6
   elseif xDiaSemana = "Saturday"
      xDia := 7
   elseif xDiaSemana = "Sunday" 
      xDia := 1
   endif   

RETURN xDia
      

Como usar o calendário do windows?

MensagemEnviado: 13 Mai 2016 16:38
por Kapiaba
Congratulations,

Daiane, faltou o .RC das tela, sem isso não é possivel incorporar o calendário.

abs.

Como usar o calendário do windows?

MensagemEnviado: 16 Mai 2016 08:59
por Daiane
Verdade Kapiaba :)

ta ai em anexo

Como usar o calendário do windows?

MensagemEnviado: 16 Mai 2016 12:22
por Kapiaba
Thanks, Daiane.

//////////////////////////////////////////////////////////////////////////////
//
// Resource Script generated by Anders Melander's Resource Editor
//
//////////////////////////////////////////////////////////////////////////////

// DIALOGEX : Dialog

2003 DIALOGEX 6, 18, 234, 218
  LANGUAGE LANG_PORTUGUESE,SUBLANG_PORTUGUESE_BRAZILIAN // Português (Brasil)
  CAPTION "Dialog"
  EXSTYLE 0 // 0x00000000L
  STYLE DS_3DLOOK | DS_FIXEDSYS | DS_SETFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_SYSMENU | WS_DLGFRAME | WS_BORDER | WS_VISIBLE | WS_POPUP // 0x90CB20CCL
  FONT 8, "Tahoma", 0, 0, 1
BEGIN
  CONTROL "", 4001, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 52, 72, 16, 12
  CONTROL "", 4006, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 72, 72, 16, 12
  CONTROL "", 4002, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 92, 72, 16, 12
  CONTROL "", 4003, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 112, 72, 16, 12
  CONTROL "", 4004, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 132, 72, 16, 12
  CONTROL "", 4005, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 152, 72, 16, 12
  CONTROL "", 4007, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 172, 72, 16, 12
  CONTROL "", 4008, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 52, 92, 16, 12
  CONTROL "", 4013, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 72, 92, 16, 12
  CONTROL "", 4009, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 92, 92, 16, 12
  CONTROL "", 4010, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 112, 92, 16, 12
  CONTROL "", 4011, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 132, 92, 16, 12
  CONTROL "", 4012, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 152, 92, 16, 12
  CONTROL "", 4014, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 172, 92, 16, 12
  CONTROL "", 4015, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 52, 112, 16, 12
  CONTROL "", 4020, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 72, 112, 16, 12
  CONTROL "", 4016, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 92, 112, 16, 12
  CONTROL "", 4017, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 112, 112, 16, 12
  CONTROL "", 4018, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 132, 112, 16, 12
  CONTROL "", 4019, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 152, 112, 16, 12
  CONTROL "", 4021, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 172, 112, 16, 12
  CONTROL "", 4022, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 52, 132, 16, 12
  CONTROL "", 4027, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 72, 132, 16, 12
  CONTROL "", 4023, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 92, 132, 16, 12
  CONTROL "", 4024, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 112, 132, 16, 12
  CONTROL "", 4025, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 132, 132, 16, 12
  CONTROL "", 4026, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 152, 132, 16, 12
  CONTROL "", 4028, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 172, 132, 16, 12
  CONTROL "", 4029, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 52, 152, 16, 12
  CONTROL "", 4034, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 72, 152, 16, 12
  CONTROL "", 4030, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 92, 152, 16, 12
  CONTROL "", 4032, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 112, 152, 16, 12
  CONTROL "", 4035, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 132, 152, 16, 12
  CONTROL "", 4033, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 152, 152, 16, 12
  CONTROL "", 4036, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 172, 152, 16, 12
  CONTROL "", 4037, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_VISIBLE | WS_CHILD, 60, 32, 116, 12
  CONTROL "", 4038, "Button", WS_TABSTOP | WS_VISIBLE | WS_CHILD, 184, 32, 20, 14
  CONTROL "", 4039, "Button", WS_TABSTOP | WS_VISIBLE | WS_CHILD, 28, 32, 20, 14
  CONTROL "   D        S        T        Q        Q       S       S", 4031, "Static", WS_GROUP | WS_VISIBLE | WS_CHILD, 52, 56, 140, 8
  CONTROL "", 4040, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 52, 168, 16, 12
  CONTROL "", 4041, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_DISABLED | WS_VISIBLE | WS_CHILD, 72, 168, 16, 12
  CONTROL "", 4042, "Button", 00000001L | 00000002L | 00000004L | WS_VISIBLE | WS_CHILD, 20, 8, 192, 40
  CONTROL "", 4043, "Button", 00000001L | 00000002L | 00000004L | WS_VISIBLE | WS_CHILD, 4, 0, 224, 188
  CONTROL "&Sair", 4044, "Button", WS_TABSTOP | WS_VISIBLE | WS_CHILD, 84, 192, 68, 18
  CONTROL "", 4045, "Edit", 00000001L | 00000080L | WS_TABSTOP | WS_BORDER | WS_VISIBLE | WS_CHILD, 60, 16, 116, 12
END

//////////////////////////////////////////////////////////////////////////////
//
// VERSIONINFO : VersionInfo
//

1 VERSIONINFO
  FILEVERSION 1,0,0,0
  PRODUCTVERSION 1,0,0,0
  FILEFLAGSMASK 0x3FL
  FILEFLAGS 0x0L
  FILEOS 0x4L
  FILETYPE 0x1L
  FILESUBTYPE 0x0L
BEGIN
  BLOCK "StringFileInfo" BEGIN
    BLOCK "040904B0" BEGIN
      VALUE "FileVersion", "1.0"
      VALUE "ProductVersion", "1.0.0.0"
      VALUE "Comments", "Add-in template for Pelles C"
      VALUE "FileDescription", "Description for resources.c"
    END
  END
  BLOCK "VarFileInfo" BEGIN
    VALUE "Translation", 0x0409, 1200 // Inglês (Estados Unidos)
  END
END