j'ai créé une form2 depuis la form1.
comment je peut récupérer la valeur "y" affichée dans form1 et l'utiliser dans form2 pour calculer la formule x=0.65+0.01*Y
j'ai créé une form2 depuis la form1.
comment je peut récupérer la valeur "y" affichée dans form1 et l'utiliser dans form2 pour calculer la formule x=0.65+0.01*Y
Salut ,
Tu peux faire : form1.Y.text
C'est à dire avec les getter/setter ?
Quels sont les risques ? .Net n'est pas égal à VB
.net est une plateforme de développement qui accueille plusieurs langages (vb.net, c#, j#, delphi.net)
tous ces langages utilisent le framework (ensemble de classe de haut niveau) et sont compilés dans le meme langage intermédiaire, le MSIL
les risques c'est que ca part du principe qu'une form = une instance, ce qui est faux
ce code créé 2 instances de form2 et les affiche
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 dim f as new form2 f.show dim f2 as new form1 f2.show
depuis vb faire form2.quelquechose est donc insensé, form2 est une variable cachée de vb qui pointe vers une seule instance, ce n'est pas garanti que ca tombe sur celle que tu souhaites
il vaut mieux donc passer une instance de la form à celle qui doit pouvoir utiliser quelque chose dessus
ici sub autre accède à un textbox de form1 mais pas n'importe quelle form1, celle qui a créé cette form2 (car il pourrait y avoir plusieurs form1 d'ouvertes)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 public class form2 private _f1 as form1 public sub new (f1 as form1) initializecomponents _f1 = f1 end sub public sub autre _f1.textbox1.Text end sub end class
de la meme manière sur un bouton de form1 qui doit afficher form2, il ne faut pas faire form2.show mais dim f as new form2 puis f.show
Merci du complément d'informations , je vais modifier mon code
Pourtant en java , cela ne se passe pas comme sa ?
comment ca ?
java n'a rien à voir avec .net
ils ont commun que ce sont des langages orientés objet, donc je pense qu'il faut aussi créer des instances des objets ...
ils ont aussi en commun que ce sont des langages semi compilés
un programme en C est compilé pour un OS et une plateforme en code natif pour celle ci, il ne peux s'executer que dans ce contexte
un programme .net ou java est compilé dans un langage intermédiaire qui est ensuite recompiler à l'execution en code natif selon l'os et la plateforme
la machine virtuelle de java (qui s'occupe de transcrire le code intermédiaire en code natif) est disponible sur des tas de plateforme, du pc au téléphone portable en passant par les voitures et les box, pour des os allant de windows à linux ...
la clr de .net (équivalent de la machine virtuelle java) est disponible pour windows allant de windows98se à windows7 pour windows mobile et donc pc, smartphone, certaines douchettes code barre etc...
un programme .net est au passage optimisé pour la situation dans laquelle il s'execute (présence d'un os 32 ou 64 bits, processeurs multicore ...)
Au niveau de la récupération d'un valeur . En java , Pour récupérer une valeurs d'une autre classe , on peut se servir d'un GET , il me semble ? Effectivement pour avoir accés au get , il faut avoir instanciée un objet de cette classe
On ne peut donc pas dire que .Net soit portable ?
Quel question , comment un langage microsoft peut il être portable
En tout cas , merci pour ce complément d'information , bien intéressant .
Bonjour,
Et en faisant une "property", ça ne marcherait pas ? En faisant par exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 Public Class Form2 Private y as integer = 0 Public Property chiffre as integer Get Return y End Get Set (ByVal value as integer) y = value End Set End Property End Class Public Class Form1 Sub Ouverture_form2 Dim F as new Form2 F.chiffre = textboxy.Text F.Show End Sub End Class
un get c'est une propriété en .net (avec get et set) donc oui si tu veux récupérer quelque chose sur une instance, tu peux mettre cette chose dans un property
une appli .net a besoin du framework et de la clr pour etre interpreté
la clr est fourni par microsoft pour windows (et windows mobile)
le projet mono permet d'utiliser des programme basé sur le framework 1.1 sur linux, le framework 2 est en cours de portabilité je crois (peut etre fini)
avec visual studio 2008 il est possible de faire des morceaux de site en silverlight
et là microsoft fourni le plugin pour ie, firefox et safari, donc sous windows, linux ou mac os
(enfin je crois que seul silverlight 1 est porté hors windows)
les applis xbap du framework 3.5 quand à elles ne fonctionnent que sous windows, mais fonctionnent sous firefox
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