begin process at 2010 02 10 00:13:26
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C#

 > 

Archives

 > 

.NET

 > 

[C#] heritage


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[C#] heritage

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ée 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...

Comparez les prix


HTC Magic

Entre 429€ et 429€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,374 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales