Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-12-2003
andres1569 andres1569 is offline
Miembro
 
Registrado: may 2003
Posts: 908
Poder: 24
andres1569 Va por buen camino
Hola de nuevo,

Veamos: manejes la escala que manejes (sean Twips, mm, cm, etc..) si sabes cuál es el factor de conversión (supongamos tal como dices que es 10), de lo que se trata es de hacer dicha conversión sólo en el momento en que vayas a visualizar en pantalla ese objeto.

Así es como funciona cualquier programa que maneja gráficos, tienes almacenadas las posiciones de cada objeto en coordenadas reales y a la hora de visualizar los objetos, traduces dichas coordenadas a pixels de pantalla, que sólo pueden expresarse como números enteros, y dibujas el objeto.

Sin embargo, entiendo tu problema: lo que te sucede es que, por lo visto, manejas Controles TImage utilizando sus propiedades Left y Top para desplazarlos. Dichas propiedades te sirven a la vez para almacenar la posición y para mostrarse en pantalla, ahí no vale ninguna conversión, cosa que no te sucedía con VB pues VB trabaja con una resolución virtual que luego se encarga de traducir a pixel (ése es un proceso interno de VB y transparente al usuario/programador), de modo que si le ponías al control VB, Left = 2000, en pantalla aparecía en el píxel 200 (p. ejemplo). Esa ventaja no la tienes en Delphi (hay cientos de ventajas de Delphi respecto a VB, supongo, pero ésa no), lo cual te obliga a almacenar las posiciones en una lista aparte (un array de TPoint por ejemplo), manejarte sobre ese array y traducir a pixels a la hora de asignar el Left y el Top.

Es más farragoso pero creo que no hay otra opción. Si acaba interesándote esta opción, hay trucos para asociar por ejemplo un record a un Control, de modo que incluso podrías prescindir de dicha lista y almacenar esos valores junto a cada Control.

He mirado la ayuda de una propiedad que traen los Forms en Delphi, que es PixelsPerInch, en teoría debería servir para trabajar con una resolución virtual al estilo VB, pero parece ser que sólo afecta a las fuentes (tipos de letras), he hecho alguna prueba y no funciona para los Controles.

Un saludo, espero que te sirvan estos comentarios ...

PD: No sé qué es ser Bolu, me lo imagino, pero creo que tú no tienes nada de eso ...
__________________
Guía de Estilo
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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 18:55:38.


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