Un peu perdu entre les Panels, Tframe ...

jderf Messages postés 189 Date d'inscription mercredi 29 décembre 2004 Statut Membre Dernière intervention 2 octobre 2014 - 10 juin 2010 à 10:32
jderf Messages postés 189 Date d'inscription mercredi 29 décembre 2004 Statut Membre Dernière intervention 2 octobre 2014 - 11 juin 2010 à 09:14
Bonjour à tous,

Voila j'ai besoin de conseils pour réaliser, et avec quel composant, un cadre comme ceux à droite de ce site "Voir aussi .. " "Vous êtes interesse..." Tapez le texte de l'url ici.

Petit plus, je souhaite avoir un fond dégradé dans le cadre.
J'avais pensé à utiliser un panel dans lequel je mets une image et des labels.
1er question - Je voulais réaliser le dégrader dans l'événement onPaint de l'image, ainsi si à la conception si je redimensionne le panel, je n'ai pas à recréer l'image avec un logiciel de dessin. Mais ceci ne risque pas d'être un peu lourd à l'exécution ?

Sinon j'ai découvert les Tframe dans delphi. Faire la même chose en mettant une image et les labels dans de Tframe.
2eme question : Comment agir dans la form principal lors de clic sur les labels de la Frame ?
Par exemple changer d'onglet d'un pagecontrol, j'ai trouver cela (from(owner).components as TpageControl).tag=MonTagduPageControl.. Mais cela me semble vraiment pas souple et peut pratique à la prog, besoin de mettre des tags sur tous les composants à modifier, faire de multiple test pour trouver le bon composant de la form etc?
Pourtant j'ai l'impression, que certain trouve les Tframe très pratique !! Y?a sans doute un truc à comprendre qui pour l'instant m?échappe !
Si j'ai tous faux et que mais pistes sont mauvaises que le Tpanel ou le Tframe ne sont pas les solutions alors merci pour votre aide.

2 réponses

Utilisateur anonyme
11 juin 2010 à 08:26
Salut

A ta place je n'utiliserai ni un panel ni une frame mais je réaliserai un composant dérivé de TCustomControl.

Citation de l'aide de Delphi


TCustomControl

Une classe de base pour les contrôles qui englobent les objets écran Windows, mais effectuent leur propre restitution.

Unité

Controls

Description

Dans la plupart des descendants de TWinControl, la tâche de dessin de la surface du contrôle relève de l'objet écran Windows sous-jacent. Si un contrôle présente des caractéristiques qui ne peuvent pas être restituées par un objet écran Windows, il requiert un accès à un objet canevas pour effectuer son propre dessin.

TCustomControl est l'une des deux classes de base pour les contrôles qui dessinent leurs propres surfaces. Etant donné que TCustomControl est dérivée de TWinControl, les instances de ses descendants peuvent recevoir la focalisation et servir de conteneurs.

Les classes de contrôle qui effectuent leur propre restitution d'écran et n'ont pas besoin des fonctions de TWinControl doivent être des descendants de TGraphicControl au lieu de TCustomControl. Les objets TGraphicControl peuvent se restituer eux-mêmes avec moins de charge, étant donné qu'ils ne comportent aucun objet écran Windows sous-jacent.

Les objets TCustomControl ont une méthode Paint, qui est appelée lorsque le contrôle doit restituer sa surface. La restitution est effectuée sur un objet référencé par la propriété Canvas.


Ca répondrait à l'ensemble de ta problématique et sincèrement le composant à réaliser n'a rien de bien méchant à faire (C'est meme un bon début pour s'initier à la chose) mais avec une option de dégradée.

Bon courage
0
jderf Messages postés 189 Date d'inscription mercredi 29 décembre 2004 Statut Membre Dernière intervention 2 octobre 2014 1
11 juin 2010 à 09:14
Merci pour ta réponse. Je vais regarder cela et peut être je me lancerai dans la création du compo.

Bonne journée.
0
Rejoignez-nous