Página 2 de 2

Alguém tem fivewin moderno e pode fazer um teste?

Enviado: 01 Ago 2024 12:16
por JoséQuintas
Alterei pra explicitamente 4
Não adianta, não respeita altura.

ahhhh. fazer outro teste pera aí....

Alguém tem fivewin moderno e pode fazer um teste?

Enviado: 01 Ago 2024 12:17
por JoséQuintas
Não, nada a ver com ampliação do Windows.

Eu não tinha olhado, mas pra vários controles, é sempre @ GET
O que precisa fazer pro fivewin entender que a altura definida no fonte pra GET é a altura que queremos, mesmo que seja com a cláusula SPINNER ?

Alguém tem fivewin moderno e pode fazer um teste?

Enviado: 01 Ago 2024 12:25
por JoséQuintas
spinner.png
Está aí, mais um teste:
Apenas removi a cláusula spinner.
O tamanho está correto agora.
Se colocar a cláusula SPINNER, o tamanho aumenta.

Aonde está o meu erro ?

Alguém tem fivewin moderno e pode fazer um teste?

Enviado: 01 Ago 2024 12:31
por JoséQuintas
spinner2.png
com a cláusula SPINNER, aumentou.

Legal né ? não é erro de usuário, é erro do fivewin !!!!!

Alguém tem fivewin moderno e pode fazer um teste?

Enviado: 01 Ago 2024 13:11
por JoséQuintas
Pergunta básica:

E agora ?

Comprar fivewin pra reportar o bug ? e continuar com o erro ?

Alguém tem fivewin moderno e pode fazer um teste?

Enviado: 01 Ago 2024 14:23
por Kapiaba
Mister quintas, BUG só se for no seu cérebro: como eu disse antes FIVEWIN tem vários modos se fazer a mesma coisa:

FOLDER -> Versões iniciais do FIVEWIN
FOLDEREX -> Versões mais nova do FIVEWIN acompanhando a evolução dos compuiladores e dos WINDOWS.

veja:

Código: Selecionar todos

// C:\FWH\SAMPLES\DETLEF.PRG

#include "FiveWin.ch"

FUNCTION Main()

   LOCAL oDlG, oDate, oStatMonth, oStatYear, oBtn
   LOCAL hData := { => }

   SET CENTURY ON
   SET EPOCH TO Year( Date() ) - 30
   Set( _SET_DATEFORMAT, "dd.mm.yyyy" )

   hData[ "date"       ] := Date()
   hData[ "stat_month" ] := Month( Date() )
   hData[ "stat_year"  ] := Year(  Date() )

   DEFINE DIALOG oDlg NAME "DATE_DLG"

   REDEFINE GET oDate VAR hData[ "date" ]    ;
      ID 10 OF oDlg PICTURE "@D"             ;
      BITMAP ""                              ;
      UPDATE                                 ;
      ACTION ( hData[ "date" ] := dGetCal(), ;
      oDate:Refresh(),                       ;
      hData[ "stat_month" ] := Month( hData[ "date" ] ), ;
      hData[ "stat_year"  ] :=  Year( hData[ "date" ] ), ;
      oStatMonth:Refresh(), oStatYear:Refresh(), ;
      oDate:SetFocus() )                         ;
      ON CHANGE ( hData[ "stat_month" ] := Month( hData[ "date" ] ), ;
                  hData[ "stat_year"  ] :=  Year( hData[ "date" ] ), ;
                  oStatMonth:Refresh(), oStatYear:Refresh() )

   REDEFINE GET oStatMonth VAR hData[ "stat_month" ] ;
      ID 20 OF oDlg PICTURE "99"                     ;
      SPINNER MIN 1 MAX 12                           ;
      UPDATE

   REDEFINE GET oStatYear  VAR hData[ "stat_year"  ] ;
      ID 30 OF oDlg PICTURE "9999";
      SPINNER MIN ( Year( Date() ) - 20 );
      MAX ( Year( Date() ) + 20 );
      UPDATE

   REDEFINE BUTTON oBtn ID IDCANCEL OF oDlg ACTION oDlg:End()

   ACTIVATE DIALOG oDlg CENTERED

RETURN NIL

STATIC FUNCTION dGetCal()

RETURN( CToD( "24.12.2008" ) )

/*  //-> SALVE COMOM: DETLEF.RC

DATE_DLG DIALOG DISCARDABLE 6, 18, 158, 70
STYLE WS_CAPTION|WS_SYSMENU|WS_MINIMIZEBOX|WS_MAXIMIZEBOX|WS_VISIBLE
CAPTION "Dialog"
FONT 10, "MS Sans Serif"
{
  CONTROL "Date", -1, "Static", WS_GROUP, 8, 12, 24, 9
  CONTROL "", 10, "Edit", ES_CENTER|WS_BORDER|WS_TABSTOP, 8, 24, 54, 11, WS_EX_RIGHT|0x00010000
  CONTROL "Statistic-Month-Year", -1, "Static", WS_GROUP, 76, 12, 64, 9
  CONTROL "", 20, "Edit", ES_AUTOHSCROLL|WS_VSCROLL|WS_BORDER|WS_TABSTOP, 76, 24, 24, 11
  CONTROL "", 30, "Edit", ES_CENTER|WS_VSCROLL|WS_BORDER|WS_TABSTOP, 108, 24, 40, 11
  CONTROL "Cancel", IDCANCEL, "Button", WS_TABSTOP, 100, 48, 48, 14
}

*/
// FIN / END
Regards, saludos.

Alguém tem fivewin moderno e pode fazer um teste?

Enviado: 01 Ago 2024 14:34
por Kapiaba

Código: Selecionar todos

// C:\FWH\SAMPLES\GUNTHER2.PRG

#include "FiveWin.ch"

FUNCTION test()

   LOCAL oDlg, oFld, oGet, cCombo, cTest := "Hello world", cAnother := "Another GET"
   LOCAL oBtn

   SetDlgGradient( { { 1, RGB( 199, 216, 237 ), RGB( 237, 242, 248 ) } } )

   DEFINE DIALOG oDlg TITLE "Quintas Test FOLDEREX" SIZE 400, 300

   @ 3, 5 FOLDEREX oFld PIXEL PROMPT "&One", "&Two", "&Three" SIZE 190, 120

   @ 1, 1 GET oGet VAR cTest OF oFld:aDialogs[ 1 ] COLOR CLR_HRED, CLR_HCYAN

   @ 2, 1 COMBOBOX cCombo PROMPTS { "A", "B", "C" } OF oFld:aDialogs[ 1 ]

   @ 4, 1 GET cAnother OF oFld:aDialogs[ 1 ] COLOR CLR_HRED, CLR_HCYAN

   // @ 5, 1 SAY cTest OF oFld:aDialogs[ 1 ]

   @ 7.2, 14 BUTTON oBtn PROMPT "Ok" ;
      ACTION MsgRun( "This is a test", "MsgRun test", {|| WaitSeconds( 5 ) } )

   ACTIVATE DIALOG oDlg CENTERED ON INIT ( oGet:SetFocus(), .F. )

RETURN NIL

// FIN / END
Regards, saludos.

Alguém tem fivewin moderno e pode fazer um teste?

Enviado: 01 Ago 2024 14:51
por Kapiaba
E é rápido para kcte para criar algo em FIVEWIN:

Código: Selecionar todos

// C:\FWH\SAMPLES\QUINTAFL.PRG - USANDO FOLDEREX e mais...

#include "FiveWin.ch"

FUNCTION Main()

   LOCAL oDlg, oFld, oGet, cCombo, cTest := "Hello world", cAnother := "Another GET"
   LOCAL oBtn, oExit, oFont, oFnt, cQuintas := "QUINTAS E O CARA"

   SkinButtons()

   // SetDlgGradient( { { 1, RGB( 199, 216, 237 ), RGB( 237, 242, 248 ) } } )

   DEFINE FONT oFont NAME "Ms Sans Serif" SIZE 00, -14 BOLD
   DEFINE FONT oFnt  NAME "Ms Sans Serif" SIZE 00, -12 BOLD

   DEFINE DIALOG oDlg TITLE "Quintas Test FOLDEREX" SIZE 400, 300 FONT oFont

   oDlg:lHelpIcon := .F.

   @ 3, 5 FOLDEREX oFld PIXEL PROMPT "&One", "&Two", "&Three" SIZE 190, 120 ;
      TAB HEIGHT 30 ROUND 5 FONT oFont COLOR METRO_ORANGE TOP

   WITH OBJECT oFld

      :lTransparent := .T.
      :aGradSel   := { { 1.0, 3926784, 16777215 }, { 0.1, 3926784, 16777215 } } // Green
      :aGradUnSel := { { 1.0, 16744448, 16777215 }, { 0.1, 16744448, 16777215 } } // Blue
      :aGradOver  := { { 1.0, 255, 16777215 }, { 0.1, 255, 16777215 } } // Red
      :aGradOverUnSel := { { 1.0, 12824535, 16777215 }, { 0.1, 12824535, 16777215 } } // Purple
      :aGradDis := { { 1.0, 15790320, 16777215 }, { 0.1, 15790320, 167772 } }
      //
      :SetOption( 1 )
      :aEnable = { .T., .T., .T., .F. } // liga / desliga folders
      :Show()
      // :DisableTab( 3 )  // idem a :aEnable
      // :oCursor := oHand  // PEGAR DO ARQUIVO DE RECURSOS.RES/RC

   END

   @ 1, 1 GET oGet VAR cTest OF oFld:aDialogs[ 1 ] COLOR METRO_RED, CLR_WHITE

   @ 2, 1 COMBOBOX cCombo PROMPTS { "A", "B", "C" } OF oFld:aDialogs[ 1 ]

   @ 4, 1 GET cAnother OF oFld:aDialogs[ 1 ] COLOR METRO_RED, CLR_WHITE

   @ 5, 1 SAY cTest OF oFld:aDialogs[ 2 ]  COLOR METRO_RED, CLR_WHITE

   @ 5, 1 SAY cQuintas OF oFld:aDialogs[ 3 ] COLOR METRO_RED, CLR_WHITE

   @ 7.2, 10 BUTTON oBtn PROMPT "Ok" ;
      ACTION MsgRun( "This is a test", "MsgRun test", {|| WaitSeconds( 5 ) } )

   @ 7.2, 20 BUTTON oExit PROMPT "&Exit" ACTION( oDlg:End ) CANCEL

   ACTIVATE DIALOG oDlg CENTERED ON INIT ( oGet:SetFocus(), .F. )

   oFont:End()
   oFnt:End()

RETURN NIL

// FIN / END - kapiabafwh@gmail.com
Regards, saludos.

Alguém tem fivewin moderno e pode fazer um teste?

Enviado: 01 Ago 2024 15:19
por Kapiaba
Veja neste tópico, quando o aprendiz é arrogante, não manja de FIVEWIN, e bate de frente comigo:

https://forums.fivetechsupport.com/view ... bb#p270784

Mais exemplos:

C:\FWH\SAMPLES:

Código: Selecionar todos


testfx1.prg
testfx3.prg
testfx3.rc
testfx3.RES
TESTFX4.PRG
testfx5.prg
TESTFX6.PRG
testfx8.prg
testfx8.rc
testfx8.RES 
Regards, saludos.

Alguém tem fivewin moderno e pode fazer um teste?

Enviado: 01 Ago 2024 15:24
por Kapiaba
Um modelo maravilhoso para estudar e aprender.

Regards, saludos.

Alguém tem fivewin moderno e pode fazer um teste?

Enviado: 01 Ago 2024 16:04
por JoséQuintas
folderex.png
Pronto.
Com FOLDEREX, adicionar duas letras não muda nada.

Agora pode voltar ao problema em questão.
Usando PIXEL e não igual seus exemplos usando linha/coluna console.

Alguém tem fivewin moderno e pode fazer um teste?

Enviado: 01 Ago 2024 16:48
por JoséQuintas
Depois de adicionar PIXEL na criação da DIALOG

Depois de adicionar PIXEL na criação de cada controle

Depois de dividir todas as coordenadas pixel por dois

É acrescentar no INIT da DIALOG pra corrigir os GETS do FIVEWIN

Código: Selecionar todos

   IF gui_LibName() == "FIVEWIN"
      FOR EACH aControl IN ::aControlList
         IF aControl[ CFG_FCONTROL ]:ClassName() == "TGET"
            aControl[ CFG_FCONTROL ]:nHeight := APP_LINE_HEIGHT
         ENDIF
   ENDIF
tget.png
É que a API Windows, a partir do Windows 6.5, passou a usar getex ao invés de get, e os parâmetros de 8 bits que usavam 16 bits, passaram pra 32 bits pra usar 64 bits, e isso deixou incompatível com compiladores fortran de nível 2, que deveriam ter sido atualizados pra nível beta gama 8.7, e ao usar compilador C mingw 14.1, sem LIBUI 7.2, ficou sem compatibilidade com Net Framework 0.1, mas por sorte achei a atualização kb850296, no sdk 682, mais atualizações no bcc, msvc, mingw, e no core harbour 3.25.792/c

Coisa tão fácil.
Qualquer um sabe disso.
Só mesmo usuário console que não sabe dessas coisas.

Nota:
Os fontes postados usam linha/coluna IGUAL CONSOLE, nada a ver com PIXEL e nada a ver com solução.

Sem mais perguntas sobre fivewin.