calendario

Projeto HwGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

paiva_dbdc
Usuário Nível 3
Usuário Nível 3
Mensagens: 342
Registrado em: 12 Nov 2012 09:58
Localização: uberlandia mg

calendario

Mensagem por paiva_dbdc »

BOM dia
alguem teria um prg de CALENDáRIO

grande de BOM visual ?

desde já agradeço


Paiva

cpaivasistemas@gmail.com
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

calendario

Mensagem 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
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

calendario

Mensagem 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
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

calendario

Mensagem 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
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Responder