FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Como puedo centrar Dialogo creado desde codigo
Posts: 142
Joined: Sun Oct 09, 2005 01:36 AM
Como puedo centrar Dialogo creado desde codigo
Posted: Sun May 27, 2007 06:44 PM

Estimados Colegas

Tengo un dialogo creado desde codigo como puedo hacer para centrarlo
en las diferentes resoluciones

desde ya muchisimas gracias

databaselab2002@yahoo.com.ar
Fabian

Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Como puedo centrar Dialogo creado desde codigo
Posted: Sun May 27, 2007 10:40 PM

ACTIVATE DIALOG oDlg CENTERED

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 142
Joined: Sun Oct 09, 2005 01:36 AM
Como puedo centrar Dialogo creado desde codigo
Posted: Sat Jun 02, 2007 02:51 AM

Estimado Antonio

En 800 x 600 me lo centra perfecto pero si cambio la resolucion
a 1024 no qque puedo hacer

DEFINE DIALOG oDlg1 from 10,35 to 20,70 STYLE nStyle COLOR CLR_BLUE,CLR_6 of oDlg

@ 0 ,06 say ofecha Prompt "CLAVE DE ACCESO " FONT OFONT of oDlg1 COLOR CLR_BLACK,CLR_6

@ 1.5 ,04 say ofecha Prompt "Usuario " FONT OFONT of oDlg1 COLOR CLR_BLACK,CLR_6

@ 2.8 ,04 say ofecha Prompt oemtoansi("Contrase¤a ") FONT OFONT of oDlg1 COLOR CLR_BLACK,CLR_6

@ 1.7 ,8 get user of odlg1
@ 3.0 ,8 get pass password of odlg1

@ 5 ,07 sbutton b resource "ok" PROMPT "Continuar" size 40,10 OF oDlg1 LOOK W97 TEXT ON_RIGHT action (Chkpass(user,pass), ODLG1:END)

ACTIVATE DIALOG oDlg1 CENTERED

return nil

Desde ya muchas gracias
Fabian

databaselab2002@yahoo.com.ar

Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Como puedo centrar Dialogo creado desde codigo
Posted: Sat Jun 02, 2007 04:29 AM

La función WndCenter() en source\winapi\wndcente.c es la encargada de hacer el centrado. Podrías modificarla un poco para que se ajuste a tus necesidades.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM
Re: Como puedo centrar Dialogo creado desde codigo
Posted: Sun Mar 28, 2021 09:24 PM
Y en el caso de querer centrar despues de cambiar el ancho...

Code (fw): Select all Collapse
   WITH OBJECT oDlg
      :nWidth:= 770
      :WndCenter() <------------- esto quiero saber como hacerlo.
   ENDWITH


como lo hago?
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 728
Joined: Fri Oct 07, 2005 07:38 AM
Re: Como puedo centrar Dialogo creado desde codigo
Posted: Mon Mar 29, 2021 08:54 AM
Prueba este código

Code (fw): Select all Collapse
#include "fivewin.ch"

#define SM_CXSCREEN 0
#define SM_CYSCREEN 1

function main()

  Local oDlg

  DEFINE DIALOG oDlg FROM 100,100 TO 500,500 TITLE "Pruebas de centrado" PIXEL

  @ 1,1 BUTTON "Centrar" ACTION CenterDialog ( oDlg )

  ACTIVATE DIALOG oDlg

return ( nil )

function CenterDialog ( oDlg )

  Local nLeft := ( GetSysMetrics ( SM_CXSCREEN ) / 2 ) - ( oDlg:nWidth / 2)
  Local nTop :=  ( GetSysMetrics ( SM_CYSCREEN ) / 2 ) - ( oDlg:nHeight / 2)

  oDlg:Move ( nTop, nLeft )

return ( nil )
Angel Salom
Visionwin Software - https://www.visionwin.com
------------------------------------------------------------
fwh 19.05 - harbour 3.2 - bcc 7.4
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Re: Como puedo centrar Dialogo creado desde codigo
Posted: Mon Mar 29, 2021 08:59 AM
Code (fw): Select all Collapse
#include "FiveWin.ch"

function Main()

  local oDlg

  DEFINE DIALOG oDlg FROM 100,100 TO 500,500 TITLE "Pruebas de centrado" PIXEL

  @ 1,1 BUTTON "Centrar" ACTION oDlg:Center()

  ACTIVATE DIALOG oDlg 

return nil
regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion