Bonjour à tous, et merci pour votre attention.
Je me lance depuis peu pour un projet à l'action script 3 et au mxml avec le Flex Builder 3.
Je suis entrain d'écrire un scripte pour créer des boutons qui représentent des cours qui seront placés dans un emploi du temps.
Chaque bouton de cours a des propriétés (nom du prof, durée, salle, heure de début et de fin de cours etc.), que sont stockées dans une base de donnée SQLite (que j'ai créé avec le SQLite admnistrator). Je récupère chacune de ses données via des requêtes SQL comme s'est écris dans le code.

Première question : dans mon getResult(), comment fait on pour caster le résultat en int, et en String ? Parce que la je fais des variables SQLResult...

Ainsi pour chaque cours je crée un bouton, comme tout à la fin du code. Deuxième question pour la fonction click du bouton, comment fait on pour que le résultat (qui est une chaîne de caractère de type String) de ce click s'affiche dans un TextArea que j'ai crée en MXML.

Enfin dernière question, comment récupérer les valeurs d'un TextInput dans mon script ? Car il me le faut pour effectuer mes requêtes...

Je sais que ça fait beaucoup...

Merci encore, et si vous avez des remarques sur le code n'hésitez pas...

PS : En gros je voudrais créer des boutons de ce type en MXML :
<mx:Button x="abs" y="ord" label="nom_cours" width="101" height="hauteur" click="result.text= debut_cours+'-'+fin_cours+', '+nom_professeur+', '+salle"/>

Peut on mettre du code MXML dans un script action script ?

Si vous avez des méthodes plus faciles...

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
 
<mx:Script>
			<![CDATA[
				import mx.core.MXMLObjectAdapter;
				//Accede à la base de donnée située sur le bureau
				var dataFile:File=new File("C:/.../PT-AbodeAIR.s3db")
				//dataFile.nativePath="C:/.../PT-AbodeAIR.s3db";
				//Ouvrir la connexion à la base de données
				dbConn = new SQLConnection(true);
				dbConn.open(dataFile);
				//Boucle sur chaque cours présent dans la base
 
				for ( var i:int = 0; i< 5; i++ ) {				
					var stmt1:SQLStatement = new SQLStatement();
					stmt1.sqlConnection = dbConn;
					stmt1.text = "SELECT Cours FROM Cours_Semaine WHERE ID="+i;
					stmt1.execute();
					var nom_cours :SQLResult=stmt1.getResult();
 
					var stmt1:SQLStatement = new SQLStatement();
					stmt1.text = "SELECT Debut_Cours FROM Cours_Semaine WHERE Eleve="+nom_elevele+" && ID='"+i;
					stmt1.sqlConnection = dbConn;
					stmt1.execute();
					var debut_cours :SQLResult=stmt1.getResult().data;
 
					var stmt1:SQLStatement = new SQLStatement();
					stmt1.text = "SELECT Fin_Cours FROM Cours_Semaine WHERE Eleve="+nom_elevele+" && ID='"+i;
					stmt1.sqlConnection = dbConn;
					stmt1.execute();
					var fin_cours :SQLResult=stmt1.getResult().data;
 
					var stmt1:SQLStatement = new SQLStatement();
					stmt1.text = "SELECT Salle FROM Cours_Semaine WHERE Eleve="+nom_elevele+" && ID='"+i;
					stmt1.sqlConnection = dbConn;
					stmt1.execute();
					var salle :Array=stmt1.getResult().data;
 
					var stmt1:SQLStatement = new SQLStatement();
					stmt1.text = "SELECT Salle FROM Cours_Semaine WHERE Eleve="+nom_elevele+" && ID='"+i;
					stmt1.sqlConnection = dbConn;
					stmt1.execute();
					var salle :SQLResult=stmt1.getResult().data;
 
					var stmt1:SQLStatement = new SQLStatement();
					stmt1.text = "SELECT Professeur FROM Cours_Semaine WHERE Eleve="+nom_elevele+" && ID='"+i;
					stmt1.sqlConnection = dbConn;
					stmt1.execute();
					var professeur :SQLResult=stmt1.getResult().data;
 
					var stmt1:SQLStatement = new SQLStatement();
					stmt1.text = "SELECT Jour FROM Cours_Semaine WHERE Eleve="+nom_elevele+" && ID='"+i;
					stmt1.sqlConnection = dbConn;
					stmt1.execute();
					var jour :SQLResult=stmt1.getResult().data;
 
					stmt1.text = "SELECT Duree_Cours FROM Cours_Semaine WHERE Eleve="+nom_elevele+" && ID='"+i;
					var stmt1:SQLStatement = new SQLStatement();
					stmt1.sqlConnection = dbConn;
					stmt1.execute();
					var duree_cours :SQLResult=stmt1.getResult().data;
 
					//initialisation des variables
					var abs:int;
 
					var duree:int;
 
					//Test pour positionner le boutons
					if (jour=="Lundi") abs=66;
 
					//Test pour gérer la hauteur du bouton
					if (duree_cours==1) hauteur=20;
					if (duree_cours==2) hauteur=40;
					if (duree_cours==3) hauteur=60;
					if (duree_cours==4) hauteur=80;
 
					//creer : 
					//<mx:Button x="abs" y="ord" label="nom_cours" width="101" height="hauteur" click="result.text= debut_cours+'-'+fin_cours+', '+nom_professeur+', '+salle"/>
 
					//Création du bouton 
					//fonction exécutée en réponse à l'événement
					function onClic(pEvt:Event):void {
						trace("Vous venez de cliquer sur le bouton");
					}
 
					// création des textes du bouton 
					var normal:TextField = new TextField(); 
					var survol:TextField = new TextField(); 
					var clic:TextField = new TextField(); 
					// Le bouton aura pour label le nom_cours 
					normal.text = survol.text = clic.text = nom_cours; 
					// Le texte du survol sera de couleur rouge 
					survol.textColor = 0xFF0000; 
					// Le texte du clic sera de couleur bleue 
					clic.textColor = 0x0000FF; 
					// création de l´instance du bouton 
					var boutonCours:SimpleButton = new SimpleButton(normal, survol, clic, normal); 
					boutonCours.label=nom_cours;
					boutonCours.height=taille_cours;
					boutonCours.width="101";
					boutonCours.x=abs;
					boutonCours.y=ord;
 
					//affichage du bouton 
					this.addChild(boutonCours);
 
 
					boutonCours.addEventListener(MouseEvent.CLICK, onClic);
 
					}
 
				dbConn.close();
			]]>
		</mx:Script>