J'ai crée une application en 1024 * 768 mais le probleme c'est lorsque j'utilise mon application avec une autre resolution toutes les fenetres sont décalés.
Y a t il un code, une solution pour résoudre ce probleme?
Merci d'avance
J'ai crée une application en 1024 * 768 mais le probleme c'est lorsque j'utilise mon application avec une autre resolution toutes les fenetres sont décalés.
Y a t il un code, une solution pour résoudre ce probleme?
Merci d'avance
tous simplement en gérant les propriétés [top, Left, height et width] de tous tes controles en fonction de la résolution....
Bref, faut tout faire "a la mano"
______________________________________________________________
edit : faut gérer aussi tout ce qui à trait à l'apparence graphique et qui risque de se modifier en fonction de la résolution (comme les polices par exemple)
Salut
J'ajouterai à ce que dit diam's qu'il te faut apprendre à utiliser les propriétés Align et Anchors. Pour comprendre leurs fonctionnement, je te conseille de prendre un Form vide, de poser un bouton au mileu, définir les propriétés Anchors une à une et regarder les effets en redimensionnant la fenêtre. Ce qui est pratique c'est que ça marche même à la conception (sans exécuter le prog). C'est, à mon avis, plus efficace qu'un long discours.
Une partie de la solution consiste aussi à prévoir que ton appli puisse être redimensionnée, tu pourras tester beaucoup de forme différentes (pense au écrans 16/9, très a la mode avec les nouveaux portables, qui ont des résolutions "exotiques" ).
Tu pourras enfin définir les propriétés MaxHeight, MaxWidth, MinHeight, MinWidth (dans la propriété Constraint(ou quelque chose comme ça, j'ai pas delphi sur ce PC)) de ta form afin de limiter la taille de ton appli. Je te conseille 800*600 comme taille mini, même si j'ai encore dernièrement entendu qu'un client de ma boite bossait en 640*480 , c'est généralement la résolution minimum des cartes graphiques actuelle.
Bonjour,
Plûtot, utiliser les propriétés Align des composants en les groupants dans des panels.Bref, faut tout faire "a la mano
Met la propriété Scaled de ta form à False pour résoudre ce problème. Ça suffira...
Tiré de l'aide de DELPHI.
Gestion de la disposition
A son niveau le plus élémentaire, vous contrôlez l'organisation de votre interface utilisateur par la manière de disposer les contrôles dans les fiches. Le choix des emplacements est reflété par les propriétés Top, Left, Width et Height des contrôles. Vous pouvez modifier ces valeurs à l'exécution afin de modifier la position ou la taille des contrôles dans les fiches.
Les contrôles disposent de nombreuses autres propriétés qui leur permettent de s'adapter automatiquement à leur contenu ou à leur conteneur. Cela vous permet d'organiser les fiches de telle manière que les différents éléments forment un tout unifié.
Deux propriétés contrôlent la position et la taille d'un contrôle relativement à celle de son parent. La propriété Align vous permet d'obliger un contrôle à s'adapter exactement à un côté spécifié de son parent ou à occuper toute la place disponible de la zone client du parent une fois les autres contrôles alignés. Quand le parent est redimensionné, les contrôles alignés sont automatiquement redimensionnés et restent positionnés le long d'un côté donné du parent.
Si vous voulez qu'un contrôle reste positionné relativement à un côté particulier de son parent sans toucher ce bord ou être redimensionné pour occuper la totalité du côté, vous pouvez utiliser la propriété Anchors.
Pour vous assurer qu'un contrôle ne devient ni trop grand ni trop petit, vous pouvez utiliser la propriété Constraints. Constraints vous permet de spécifier la hauteur maximum, la hauteur minimum, la largeur maximum et la largeur minimum du contrôle. Initialisez ces valeurs afin de limiter la taille (en pixels) de la hauteur et de la largeur du contrôle. Ainsi, en initialisant les contraintes MinWidth et MinHeight d'un objet conteneur, vous êtes certain que ses objets enfant sont toujours visibles.
La valeur de Constraints se propage le long de la hiérarchie parent/enfant de telle manière que la taille d'un objet peut être restreinte car il contient des enfants alignés qui ont des contraintes de taille. Constraints peut également empêcher un contrôle d'être mis à l'échelle dans une dimension particulière lors de l'appel de sa méthode ChangeScale.
TControl introduit un événement protégé, OnConstrainedResize, de type TConstrainedResizeEvent :
TConstrainedResizeEvent = procedure(Sender: TObject; var MinWidth, MinHeight, MaxWidth, MaxHeight: Integer) of object;
Cet événement vous permet de surcharger les contraintes de taille lors d'une tentative de redimensionnement du contrôle. Les valeurs des contraintes sont transmises comme paramètres var, elles peuvent donc être modifiées dans le gestionnaire d'événement. OnConstrainedResize est publié pour les objets conteneur (TForm, TScrollBox, TControlBar et TPanel). De plus, les concepteurs de composants peuvent utiliser ou publier cet événement dans tout descendant de TControl.
Les contrôles dont le contenu peut changer de taille ont une propriété AutoSize qui force le contrôle à adapter sa taille à l'objet ou à la fonte qu'il contient.
Juste pour dire que les résolutions d'écran et par conséquent l'adaptation des fenêtres à une résolution quelconque est un problème très difficile. Il suffit pour se convaincre de voir les solutions apportées par Java et ses Layouts Manager!!!!
Personne ne pourra te reprocher d'avoir des erreurs de dispositions en fonction de la résolution...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager