Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : [C#] heritage [ Archives / .NET ] (zebulix131)

jeudi 22 janvier 2004 à 18:18:56 | [C#] heritage

zebulix131


bonsoir a tous

pourriez vous m'indiquer ou puis je trouver un exemple simple d'une fenetre qui herite d'une autre . Exemple l'image principale avec 2 boutons et pouvoir reutiliser cette fenetre dans certains cas mais en y ajoutant d'autres boutons
Merci pour votre aide
je cherche sur les forums mais je ne trouve pas d'exemple simple sur l'Heritage

merci pour votre aide

zebulix13

vendredi 23 janvier 2004 à 05:35:54 | Re : [C#] heritage

vieuxLion

Bonjour,
le travail de dérivation est assez simple :

1) Création du Projet avec une fenêtre :
Crée un projet Windows de classe principale Form1
Ajoute au projet une Form FrmBase
place des contrôles dans cette form :
exemple un label "Base" et un bouton Fermer
this.Close();
crée un champ privé de type FrmBase dans Form1
private FrmBase frm1 = new FrmBase();
Ajoute un menu avec deux options : op1 et op2
Ajoute sur op1 le gestionnaire de message suivant :
frm1.ShowDialog();
Compile et teste

2) Ajout de la fenêtre dérivée
Ajoute au projet (par le menu ajouter un formulaire hérité) une Form "FrmDerivee" en choisissant FrmBase comme modèle
ajoute lui des contrôles : une image par exemple
crée un champ privé de type FrmBase dans Form1
private FrmDerivee frm2 = new FrmDerivee();
Ajoute sur l'option de menu op2 le gestionnaire de message suivant :
frm2.ShowDialog();
Compile et teste

Voila, la fenêtre FrmDerivee hérite des contrôles de FrmBase ainsi que de ces gestionnaires de messages
Pour pouvoir manipuler le label de FrmBase à partir de FrmDerivee, il suffit de modifier son modificateur "private" en "protected" lors de sa déclaration
On pourra alors modifier le libellé en "Derivee" dans FrmDerivee_Load
label1.Text = "Dérivée";



vendredi 23 janvier 2004 à 12:57:21 | Re : [C#] heritage

zebulix131


merci a vieuxllion pour l'info
je vais essayer de ce pas


merci

samedi 24 janvier 2004 à 14:13:30 | Re : [C#] heritage

zebulix131


j'ai suivi le modele a la lettre mais il y a une declaration que je ne sais pas ou mettre dans mon code :
champ prive ..... private FrnBase frm1 = new FrmBase();
merci pour votre aide

samedi 24 janvier 2004 à 15:16:35 | Re : [C#] heritage

vieuxLion

bonjour zebulix131,

un champ s'ajoute toujours dans le bloc de la classe,
hors des blocs de méthodes

exemple :
public class Form1 : System.Windows.Forms.Form
{
private FrnBase frm1 = new FrmBase();
private FrmDerivee frm2 = new FrmDerivee();
// ici les méthodes
}

bon courage pour la suite

dimanche 25 janvier 2004 à 09:31:06 | Re : [C#] heritage

zebulix131


ca fonctionne mais ma winform principale reste ouverte margres que je Close() sur ma fenetre heritee
je recherche une personne qui aurait l'amabilite de jeter un oeil sur mon source ??
merci d'avance
envoyer moi un message afin que je vous fasse parvenir mes bourdes de debutant

merci a tous


dimanche 25 janvier 2004 à 09:58:21 | Re : [C#] heritage

vieuxLion

oui,

la fenêtre que tu ouvre est une fenêtre secondaire
pour fermer l'application tu peux utiliser
Application.Exit();


ceci dit, il vaudrait mieux
- ouvrir la fenêtre secondaire en modeless, c'est à dire utiliser
frm.Show() au lieu de frm.ShowDialog()
- et peut être cacher la fenêtre principale si tu n'en a plus besoin : this.Hide() sur la ligne suivant le frm.Show()


dimanche 25 janvier 2004 à 13:36:14 | Re : [C#] heritage

zebulix131


En fait :
1 j'ai cree une winform que j'ai nomme FrmRando
ne contient rien

2 j'ai cree une winform que j'ai nomme FrmPassword
qui contient un Label et un bouton Valider et un autre bouton Quitter
3 j'ai cree un heritage de FrmPassword que j'ai nomme FrmPasswordBis et qui contient en plus un bouton Modifier

Lorsque je lance mon applic il s'affiche bien ma fenetre herite qui se nomme FrmPasswordBis mais lorque je fait Close() ou Application .Exit() ca ferme bien la fenetre FrmPasswordBis mais la fenetre principale reste toujours active et visible malgre le hide()

en fait je voudrais que quelque soit la fenetre ouverte le fait de cliquer sur le bouton QUITER me ferme mon application.
Peu etre que mon bouton Quiter ne devrait pas etre sur la fenetre FrmPassword?

De plus suis-je oblige de passer par une fenetre principale?

En fait je desire faire une gestion de login et password puis le rendre independant dll ou autre afin que lorsque je desire utiliser ce module dans un programme je puisse m'en servir d'outils et des que je clique sur le bouton valider il verifi si le mot de passe est correct et lance a son tour un autre module

merci encore de votre aide

dimanche 25 janvier 2004 à 13:59:58 | Re : [C#] heritage

zebulix131


c'est ok Pour application Exit c'est ma faute je l'avait mal placer et maintenant ca ferme mon explication

merciiiiii

j'abuse une autre petite question
dans ma fenetre FrmPassword j'ai cache(visible false) un label et un texbox mais lorsque j'apelle ma fenetre FrmPasswordBis qui s'affiche en appuyant sur le bouton modifier comment rendre a nouveau visible ce label et ce texbox qui se trouvent sur ma fenetre herite(FrmPassword) ???


merci encore

dimanche 25 janvier 2004 à 17:07:18 | Re : [C#] heritage

vieuxLion

salut;

je vois que tu progresse bien

pour ta dernière question : relis les réponses ci dessus
tu y verra :
Pour pouvoir manipuler le label de FrmBase à partir de FrmDerivee, il suffit de modifier son modificateur "private" en "protected" lors de sa déclaration
On pourra alors modifier le libellé en "Derivee" dans FrmDerivee_Load
label1.Text = "Dérivée";

le modificateur "protected" donne l'accès aux classes dérivées


1 2

Cette discussion est classé dans : boutons, simple, fenetre, exemple, heritage


Répondre à ce message

Sujets en rapport avec ce message

[C#] base de donnee + xml [ par zebulix131 ] bonsoir a touspourriez vous m'indiquer ou puis je trouver un exemple simple de la gestion d'une base de donnee. Exemple soit une base ACCES ou un fich Linq to XML [ par shadow1779 ] Bonjour,on trouve de nombreux exemple de Linq to XML sur le net avec la création d'un xml après une requète effectuée avec Linq, néanmoins je recherch exemple de code QCM en C# [ par nouriia4esti ] Je suis un etudiant debutant en plate forme .Net qui cherche  un code source de QCM en C#.Merci pour votre attention. fenetre qui apparait quant la souris passe dessus et disparait quant la sourit la quitte [ par rgomri ] je veux faire une fenetre qui apparait quant la souris passe dessus et qui disparait quant la souris n'est pas dessus (genre barre de tache ) j'ai fa Fenetre de copie de fichier façon Windows Vista [ par saifer ] Salut à tous, Je me pose une question et je me dis que quelqu'un ici doit sûrement avoir la réponse ;) Comment crée une Form ayant le même style que ouvrir une fenetre [ par turpin2008 ] Bopnjour Voilà mon probleme ,je suis debutant en vb et je suis entrain de creer une application dans visual studio, j'ai rencontre un probleme. En fa MCD [ par nouganux ] Bonsoir tout le monde,je commence avec oracle, et je dois réaliser une base de données d'un annuaire d'une société par exemple, si quelqu'un peut me d une fenetre user et login [ par renaud2008 ] bonjour,sos débutantje suis débutant, et je ne trouve pas sur les forums ce que je cherche d'où ma question.j'ai une application que je voulais qu'ell Problème simple de List_Box [ par Rhend ] Bonjour,J'ai un problème simple sur ma ListBox et je n'arrive pas à trouver le pourquoi du comment et ca commence à m'énerver, donc je viens à vous av Empecher l'ouverture d'une fenetre plus qu'une fois apres un clic sur un boutton!! [ par schumi7 ] Bonjour,j'appel une fenetre qui m'affiche un datagridview. j'aimerai que lorsque je l'appel une deuxieme fois pour d'autre paramètres, elle met à jour


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 2,075 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.