begin process at 2012 02 08 21:12:01
  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 afficher une deuxiéme fenetre [ par ami7 ] Bonjour, SVP , j'ai crée deux fenêtres la première contenant 4 boutons représentant 4 personnes et la deuxième contient deux TextBox c'est 'login' Formulaires MDI Parents et Enfants (Visual Studio 2008 Pro) [ par Osyrys ] Bonjour, Voila, j'ai créé mon formulaire MDI parent avec a l'interieur 2 fenetre MDI enfants. je compile pour voir que tout fonctionne. ok c'est bon. Afficher une image dans une colonne DataGridViewImageColumn contenu dans une fenetre MDI fille [ par scortex84 ] Bonjour, Je rencontre un problème qui me rend fou : J'ai une fenêtre avec un datagridview que je rempli à partir d'une source. Le tableau contient un [Toolbar] Problème d'obtention des boutons [ par mat29100 ] Bonjour, je viens vous voir aujourd'hui pour un problème que je n'arrive pas à résoudre, et qui me tracasse depuis maintenant presque deux semaines... Lorsque ecrire sur combox il faut filtrer combox comment fait ca??? *exemple: dans combox se trouve : -adleni -neyla -aaaa lorsque ecrire :a il faut filtrer -adleni -aaaa ..... [ par adleni ] Lorsque ecrire sur combox il faut filtrer combox comment fait ca??? *exemple: dans combox se trouve : -adleni -neyla un bouton 2 fonction lorsque clique ouvrir fenetre et lorsque clique un autre fois fermer c# [ par adleni ] Salut! comment un bouton 2 fonction lorsque clique ouvrir fenetre et lorsque clique un autre fois fermer c# Diagramme de classes et utilisation de listes génériques [ par Gendal67 ] Bonjour à tous, Je me permets de poster un nouveau topic afin de solliciter votre aide sur un problème que je rencontre actuellement avec le concepte


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

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 : 1,373 sec (3)

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