Página 1 de 1

calendario

Enviado: 06 Jul 2019 07:56
por paiva_dbdc
BOM dia
alguem teria um prg de CALENDáRIO

grande de BOM visual ?

desde já agradeço


Paiva

cpaivasistemas@gmail.com

calendario

Enviado: 06 Jul 2019 09:54
por JoséQuintas
Acho que em modo gráfico é relativamente simples, ainda mais se a hwgui permitir criar controles como array.
Seria criar o formulário com textbox pros dias. text01, text02, text03, etc.
Depois só pegar o dia da semana pra ver aonde vai começar.
Mais ou menos assim, ajustando pra HWGUI:

Código: Selecionar todos

nPos := Dow( Stod( "20190701" ) )
FOR nCont = 1 TO 31
   &( "textbox" + StrZero( nCont + nPos, 2 ) :Value := Ltrim( Str( nCont _) )
NEXT

calendario

Enviado: 06 Jul 2019 19:23
por asimoes
Olá,

Usando hwg Form Designer
2019-07-06 19_27_11-CN=Microsoft Windows, O=Microsoft Corporation, L=Redmond, S=Washington, C=US.png

Código: Selecionar todos

#Include "hwgui.ch"
STATIC Thisform

FUNCTION calendario( ... )
 RETURN _calendario( HB_AParams() )

FUNCTION _calendario(  )

  LOCAL oDlg,  oMonthcalendar1, oButtonex1


  INIT DIALOG oDlg TITLE "Calendário"    AT 0, 0 SIZE 259,262 NOEXIT  ;
     STYLE WS_POPUP+WS_CAPTION+WS_SYSMENU+WS_SIZEBOX+DS_CENTER 
    Thisform := oDlg

   @ 12,15 MONTHCALENDAR oMonthcalendar1 SIZE 232,195  
   @ 148,221 BUTTONEX oButtonex1 CAPTION "Sair"   SIZE 98,32 ;
        STYLE BS_CENTER +WS_TABSTOP  ;
        ON CLICK {|| Thisform:Close() }

   ACTIVATE DIALOG oDlg 


RETURN oDlg:lresult

calendario

Enviado: 06 Jul 2019 19:29
por asimoes
Na pasta samples da hwgui tem este exemplo:

Código: Selecionar todos

//================================================================//
// Programa......: Controle MonthCalendar - Exemplo
// Programador...: Marcos Antonio Gambeta
// Contato.......: marcos_gambeta@hotmail.com
// Website.......: http://geocities.yahoo.com.br/marcosgambeta/
//================================================================//
// Linguagem.....: Harbour/xHarbour + HWGUI
// Plataforma....: Windows
// Criado em ....: 17/2/2004 21:41:05
// Atualizado em : 17/2/2004 22:39:19
//================================================================//
// Este programa demonstra o uso do controle MonthCalendar da
// biblioteca HWGUI (Classe HMonthCalendar).
//================================================================//

#include "windows.ch"
#include "guilib.ch"

//================================================================//

Function Main

   Local oWnd

   SET DATE BRITISH
   SET CENTURY ON

   hwg_Settooltipballoon(.t.)

   INIT WINDOW oWnd MAIN TITLE "Controle MonthCalendar" ;
      AT 100,100 SIZE 640,480

   MENU OF oWnd
      MENUITEM "&Calendário 1" ACTION Dlg1()
      MENUITEM "&Calendário 2" ACTION Dlg2()
      MENUITEM "&Sair"         ACTION hwg_EndWindow()
   ENDMENU

   ACTIVATE WINDOW oWnd

   Return Nil

//================================================================//

Function Dlg1

   Local oDlg
   Local oMC
   Local oFont

   INIT DIALOG oDlg TITLE "Calendário - Exemplo 1" ;
      AT 20,20 SIZE 500,300

   PREPARE FONT oFont NAME "Arial" WIDTH 0 HEIGHT -12

   @ 20,20 MONTHCALENDAR oMC ;
      SIZE 250,250 ;
      INIT ctod("01/01/2004") ;
      ON INIT {||hwg_Msginfo("Evento On Init","MonthCalendar")} ;
      ON CHANGE {||hwg_Msginfo("Evento On Change","MonthCalendar")} ;
      NOTODAY NOTODAYCIRCLE WEEKNUMBERS ;
      FONT oFont ;
      TOOLTIP "MonthCalendar - NoToday - NoTodayCircle - WeekNumbers"

   @ 300,20 BUTTON "Get Date" ON CLICK {||hwg_Msginfo(dtoc(oMC:GetValue()))} SIZE 100,40
   @ 300,60 BUTTON "Set Date" ON CLICK {||oMC:SetValue(Date())} SIZE 100,40

   ACTIVATE DIALOG oDlg

   Return Nil

//================================================================//

Function Dlg2

   Local oDlg
   Local oMC
   Local oFont

   INIT DIALOG oDlg TITLE "Calendário - Exemplo 2" ;
      AT 20,20 SIZE 500,300

   PREPARE FONT oFont NAME "Courier New" WIDTH 0 HEIGHT -12

   @ 20,20 MONTHCALENDAR oMC ;
      SIZE 250,250 ;
      INIT Date() ;
      FONT oFont

   @ 300,20 BUTTON "Get Date" ON CLICK {||hwg_Msginfo(dtoc(oMC:GetValue()))} SIZE 100,40
   @ 300,60 BUTTON "Set Date" ON CLICK {||oMC:SetValue(Date())} SIZE 100,40

   ACTIVATE DIALOG oDlg

   Return Nil

//================================================================//
2019-07-06 19_39_40-monthcalendar.png