Classe: MsCalendGridCria um objeto do tipo grade de períodos. NewMétodo construtor da classe. MsCalendGrid(): New ( [ oWnd], [ nRow], [ nCol], [ nWidth], [ nHeight], [ dDateIni], [ nResolution], [ bWhen], [ bAction], [ nDefColor], [ bRClick], [ lFilAll], [ nTypeUnit ] ) --> oObjeto Nome | Tipo | Descrição | Obrigatório | Referência | oWnd | Objeto | Indica a janela ou controle visual onde o objeto será criado. | | | nRow | Numérico | Indica a coordenada vertical em pixels ou caracteres. | | | nCol | Numérico | Indica a coordenada horizontal em pixels ou caracteres. | | | nWidth | Numérico | Indica a largura em pixels do objeto. | | | nHeight | Numérico | Indica a altura em pixels do objeto. | | | dDateIni | Data | Indica a data inicial do calendário. | | | nResolution | Numérico | Indica a resolução que será aplicada na grade do calendário. | | | bWhen | Bloco de código | Indica o bloco de código que será executado quando a mudança de foco da entrada de dados, na janela em que o controle foi criado, estiver sendo efetuada. Observação: O bloco de código retornará verdadeiro (.T.), se o controle permanecer habilitado; caso contrário, retornará falso (.F.). | | | bAction | Bloco de código | Indica o bloco de código que será executado quando clicar, com o botão esquerdo do mouse, sobre o botão. | | | nDefColor | Numérico | Indica a cor de fundo da grade. | | | bRClick | Bloco de código | Indica o bloco de código que será executado quando clicar, com o botão direito do mouse, sobre o objeto. | | | lFilAll | Lógico | Indica se habilita (.T.)/desabilita (.F.) o preenchimento de todo o período. | | | nTypeUnit | Numérico | Indica o tipo de grade, 0(Default) = Horas e 1=Dias | | |
oObjeto()- Retorna o objeto criado.
oMsCalendGrid := MsCalendGrid():New( oDlg, 01, 01, 260,184,; date(), nResolution, ,{|x,y| Alert(x) },; RGB(255,255,196), {|x,y|Alert(x,y)}, .T. ) Add<p>Adiciona um período na grade.</p>MsCalendGrid(): Add ( [ cCaption], [ nLin], [ nInicial], [ nFinal], [ nColor], [ cDescri] ) --> Nome | Tipo | Descrição | Obrigatório | Referência | cCaption | Caracter | Indica o título que será inserido à esquerda da grade. | | | nLin | Numérico | Indica o número da linha que será inserido no item. | | | nInicial | Numérico | Indica a data inicial. | | | nFinal | Numérico | Indica a data final. | | | nColor | Numérico | Indica a cor que será utilizada para destacar o item. | | | cDescri | Caracter | Indica a mensagem, do tipo dica de contexto (tooltip/hint), que será apresentada ao posicionar o ponteiro do mouse sobre o item. | | |
oMsCalendGrid:Add('caption 01', 1, 10, 20, RGB(255,000,0), 'Descricao 01') ChangeColor<p>Redefine a cor de um determinado intervalo.</p>MsCalendGrid(): ChangeColor ( < nLinha>, < nIntervalo>, < nCor> ) --> Nome | Tipo | Descrição | Obrigatório | Referência | nLinha | Numérico | Indica a linha do calendário. | X | | nIntervalo | Numérico | Indica o intervalo que será redefinido no calendário. | X | | nCor | Numérico | Indica a cor que será utilizada no intervalo. | X | |
oMsCalendGrid:ChangeColor( 1, 10, CLR_YELLOW ) Exemplo do método ChangeColor Delete<p>Exclui um intervalo do calendário.</p>MsCalendGrid(): Delete ( < nLinha>, < nIntervalo> ) --> Nome | Tipo | Descrição | Obrigatório | Referência | nLinha | Numérico | Indica a linha do calendário. | X | | nIntervalo | Numérico | Indica o intervalo que será excluído. | X | |
oMsCalendGrid:Delete( 1, 10 ) Exemplo do método Delete GetEscala<p>Retorna um texto informando o intervalo e a quantidade de pixels necessários para exibição do calendário.</p>MsCalendGrid(): GetEscala ( ) --> cEscala cEscala(caracter)- Retorna um texto informando o intervalo e a quantidade de pixels necessários para exibição do calendário.
oMsCalendGrid:GetEscala() // Result: 1 Intervalo = 3 Pixels GetIntervalTime<p>Retorna o texto definido para o intervalo.</p>MsCalendGrid(): GetIntervalTime ( < nLinha>, < nIntervalo> ) --> cIntervalo Nome | Tipo | Descrição | Obrigatório | Referência | nLinha | Numérico | Indica a linha do calendário. | X | | nIntervalo | Numérico | Indica o intervalo do calendário. | X | |
cIntervalo(caracter)- Retorna o texto que contém informações sobre o intervalo.
oMsCalendGrid:GetIntervalTime(1,10) //Result: 09/06/08 02:15 - 09/06/08 04:45 - Descricao 01 GoNext<p>Posiciona o ponteiro do mouse no início, do próximo intervalo, da linha selecionada.</p>MsCalendGrid(): GoNext ( ) --> GoPrev<p>Posiciona o ponteiro do mouse no início, do intervalo anterior, da linha selecionada.</p>MsCalendGrid(): GoPrev ( ) --> Reset<p>Limpa todos os intervalos do calendário.</p>MsCalendGrid(): Reset ( ) --> SetDateIni<p>Define a data inicial do calendário.</p>MsCalendGrid(): SetDateIni ( < dDataIni> ) --> Nome | Tipo | Descrição | Obrigatório | Referência | dDataIni | Data | Indica a data inicial do calendário. | X | |
oMsCalendGrid:SetDateIni( ctod("01/01/2008") ) SetDefColor<p>Define a cor de fundo do calendário.</p>MsCalendGrid(): SetDefColor ( < nCor> ) --> Nome | Tipo | Descrição | Obrigatório | Referência | nCor | Numérico | Indica a cor de fundo do calendário. | X | |
oMsCalendGrid:SetDefColor( CLR_HRED ) Exemplo do método SetDefColor SetResolution<p>Define a resolução para exibição dos períodos.</p>MsCalendGrid(): SetResolution ( < nResolução> ) --> Nome | Tipo | Descrição | Obrigatório | Referência | nResolução | Numérico | Indica a resolução que será utilizada para exibição dos períodos. | X | |
oMsCalendGrid:SetResolution(1) Exemplo do método SetResolution SetTimeUnitDefine o tipo de grade, 0 = Horas e 1 = Dias.MsCalendGrid(): SetTimeUnit ( < nTypeUnit> ) --> Nome | Tipo | Descrição | Obrigatório | Referência | nTypeUnit | Numérico | Define o tipo de grade, 0 = Horas e 1 = Dias | X | |
Método disponível em builds superiores a 7.00.101202A. nTypeUnit := 1 // [0=Horas(Default) e 1=Dias]oMsCalendGrid := MsCalendGrid():New( oDlg,01,01,500,125,,nResolution,,,,,.T. )oMsCalendGrid:SetTimeUnit(nTypeUnit) Propriedade | Descrição | Tipo | cTopMsg | Indica o texto a ser exibido na lateral esquerda superior.Disponível a partir de build superior à 7.00.111010P | Caracter | nLineAtu | Indica a linha que será selecionada. | Numérico | nZoom | Indica o zoom que será definido. | Numérico |
#include "TOTVS.CH" User Function MsCalendGrid() DEFINE DIALOG oDlg TITLE "Exemplo MsCalendGrid" FROM 180,180 TO 550,700 PIXEL // Cria Calendário nResolution := 4 oMsCalendGrid := MsCalendGrid():New( oDlg, 01, 01, 260,184,; date(), nResolution, ,{|x,y| Alert(x) },; RGB(255,255,196), {|x,y|Alert(x,y)}, .T. ) // Adiciona periodos oMsCalendGrid:Add('caption 01', 1, 10, 20, RGB(255,000,0), 'Descricao 01') oMsCalendGrid:Add('caption 02', 2, 20, 30, RGB(255,255,0), 'Descricao 02') oMsCalendGrid:Add('caption 03', 3, 01, 05, RGB(255,0,255), 'Descricao 03') ACTIVATE DIALOG oDlg CENTERED Return Exemplo da classe MsCalendGrid Microsiga Protheus 8.11 , Protheus 10 |