Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-02-2005
galmacland galmacland is offline
Miembro
 
Registrado: nov 2004
Posts: 48
Poder: 0
galmacland Va por buen camino
Exclamation Resolucion grafica de aplicacion

hola, he realizado una aplicacion con una resolucion grafica de 1024x768, se visualiza perfectamente segun su diseño, pero hay usuarios que harian uso de esta y su resolución no excede de los 800x600 y se ve demasiado grande el programa, no se ajusta a la pantalla muy bien y es bastante incomodo de trabajar, quisiera que se ajustara relativamente a la resolucion, como hago...
gracias por las sugerencias........
Responder Con Cita
  #2  
Antiguo 01-02-2005
Avatar de argami
argami argami is offline
Miembro
 
Registrado: jun 2003
Ubicación: Barcelona
Posts: 57
Poder: 21
argami Va por buen camino
es un problema con el que nos hemos encontrado:

Puedes detectar la resolucion de la pantalla con el Screen.Width y screen.Heigth y saber si la pantalla es mas grande o mas pequeña de 1024x768 con esto y una regla de tres sabes en que tanto porciento es la pantalla mas pequeña.

i diras para que me sirve todo esto??
pues puedes usar una funcion que se llama scaleby(M, D) puedes decirle cuanto es la modificacion de los componentes
Código:
    Scaleby(75, 100) //esto es un 75%
para hacer esto te toca lo mas puñetero tienes que repasarte cada uno de los componentes que hay en la pantalla hacerle el Scaleby y ademas con el porcentaje tendrias que ajustar la fuente, el left y el top.

te podria dar una pista de que puedes hacer una rutina generica usando la rutinas de obtener las propiedades, del TypInfo.

espero que esto te ayude
__________________
Gami

------------------------------------------------------------------
La necesidad no tolera tardanzas pero mas vale tarde que nunca
Responder Con Cita
  #3  
Antiguo 01-02-2005
galmacland galmacland is offline
Miembro
 
Registrado: nov 2004
Posts: 48
Poder: 0
galmacland Va por buen camino
Unhappy gracias pero....

necesito esto lo antes posible y creo que me demoraria demasiado, gracias de todas formas.... sigo en espera de mas sugerencias....
Responder Con Cita
  #4  
Antiguo 01-02-2005
Avatar de argami
argami argami is offline
Miembro
 
Registrado: jun 2003
Ubicación: Barcelona
Posts: 57
Poder: 21
argami Va por buen camino
vale lo acepto me equivoque usa esto y ya lo tienes si quieres cambiar el ajuste juegas con las cantidades
Código:
Procedure AjustForm(Form:TForm);
begin
  With Form do
  begin
     ScaleBy (75, 100);
     Width := Width * 0.75;
     Height := Height * 0.75;
  end;
end;
__________________
Gami

------------------------------------------------------------------
La necesidad no tolera tardanzas pero mas vale tarde que nunca
Responder Con Cita
  #5  
Antiguo 01-02-2005
galmacland galmacland is offline
Miembro
 
Registrado: nov 2004
Posts: 48
Poder: 0
galmacland Va por buen camino
Exclamation pues...no, aun nada

gracias mil por tu ayuda, pero no, no consigo una relatividad entre los objetos y la form, todo se mueve de lugar tratando de ajustarse... keep on trying
Responder Con Cita
  #6  
Antiguo 01-02-2005
Avatar de argami
argami argami is offline
Miembro
 
Registrado: jun 2003
Ubicación: Barcelona
Posts: 57
Poder: 21
argami Va por buen camino
Código:
Procedure AjustForm(Form:TForm);
var I:Integer;
begin
  With Form do
  begin
    For I:= 0 to ComponentCount - 1 do
    begin
      if (Components[i] is Tcontrol) then
      begin
        if (Components[i] is TWinControl) then
        begin
          Twincontrol(Components[i]).ScaleBy (75, 100);
        end else begin
          Tcontrol(Components[i]).Width := Trunc(Tcontrol(Components[i]).Width * 0.75);
          Tcontrol(Components[i]).Height := Trunc(Tcontrol(Components[i]).Height * 0.75)
        end;
        Tcontrol(Components[i]).Left  :=  Trunc(Tcontrol(Components[i]).Left * 0.75);
        Tcontrol(Components[i]).Top   :=  Trunc(Tcontrol(Components[i]).Top * 0.75);
      end;
    end;
    Width := Trunc(Width * 0.75);
    Height := Trunc(Height * 0.75);
  end;
end;
si esto te va solo hay que ajustar la fuente espero que te sirva
__________________
Gami

------------------------------------------------------------------
La necesidad no tolera tardanzas pero mas vale tarde que nunca
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 17:59:23.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi