bonjour
j'effectue le développement d'un logiciel sous Delphi XE; Mon Projet consiste a calculer la température des lignes aériennes a 2 point ou il y a un multimètre ou une sous-station l’algorithme du calcule est le même sauf a ma sous-station l’utilisateur rentre le rayon de ma ligne aérienne au multimètre il est inclue(un constructeur qui le transmet a ma fiche) dans le calcule l'utilisateur n'as pas la main au dessous.
j' ai créer un bouton a partir de ce bouton et selon le choix de l'utilisateur une des deux fenêtre que j ai créer chacune associé au multimètre et au sous-station je teste chaque cas tout seul car je travail sous un programme qui est développé par une dizaine de personnes avant moi et j' ai pas encore trouver les objets associé a ma sous-station et a mon multimètre dans ma fenêtre d’affichage qui différente des deux autre que j'ai créer elle cette fenêtre affiche mes résultats sous la forme d'un graphe.
mon programme dans la fenêtre d affichage
la partie ou j ai mon constructeur qui dois se remplir lors que l user modifie les paramètre par défaut et clique sur ok
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 procedure TFResultats.BoutonCalculeThermiqueClick(Sender: TObject); var listresultats: TobjectList; Horaire : boolean; SerieTemps, Serietheta: TLineSeries; NombrePoints ,i: integer; res:TObjetResultats; ListeDesResultats: TObjectList; begin //if Res=Simulation.ListeDesResultatsSST then //if (TObjetResultats(Arborescence.Selections[i].Data) is TObjetResultatsSST) then begin listresultats:=ResultatsSelectionnes(); if (listresultats.Count= 1) then begin //Rayon:=Fcatenaire(TConducteur).GrilleConducteurs ;//FCatenaire.GrilleConducteurs;//.Cols[3,1]; serietheta:=tlineseries.Create(self); //,Tobjetmultimetre a rjouter dans mon constructeur //if (TObjetResultats(ListeDesResultats[i]) is TObjetResultatsSST) then // BEGIN //fichecalculethermique:=Tfichecalculethermique.Create(nil,OrdonneeSelectionnee,Tobjetresultats(listresultats.items[0]),TLineSeries(SerieTheta)); //items nimporte kel objet dans la liste (mon objet) //fichecalculethermique.showmodal;//interdiction au autre fenetre equvaut ac surveillance ligne suivante //if ficheCalculeThermique.ModalResult =mrOk then//Validation de la fenêtre //END; //ELSE if res is TobjetResultatsMultimetre then // la partie en commentaire concerne me sou-station qui marche super bien j arrive a affiché mes résultat sans problème fichecalculethermique2:=Tfichecalculethermique2.Create(nil,OrdonneeSelectionnee,Tobjetresultats(listresultats.items[0]),TLineSeries(SerieTheta),TFCatenaire(rayon)); fichecalculethermique2.showmodal;//interdiction au autre fenetre equvaut ac surveillance ligne suivante if ficheCalculeThermique2.ModalResult =mrOk then//Validation de la fenêtre begin NombrePoints := 5000; Horaire:=RadioAbscisseHoraire.Checked; SerieTheta.title:='temperature d''échauffement -'+PanneauOnglets.ActivePage.Caption; // apel les propriétés daffichage de la parti graphe .... end
le problème c'est que en mode compilation lorsque j’appuie sur le bouton ok il passe pas dans cette partie cad prendre en compte les donné que j ai rentré alors j ai un affichage d'un graphe vide
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 procedure TficheCalculeThermique2.BoutonOKClick(Sender: TObject); var N0,k:integer; V,amb,R,Ry:Double; q,e1,z,nb:double ; T1:Double; objettemplist2:templist2; resultattemp:TMatrice; // conceptipn de la teperature percedente pour la suivante //TObjetResultatsMultimetre : objetResultatsMultimetre; MEMECHOSE QUE LIGNE SUIVANTE Multimetre:TObjetResultatsMultimetre; ListeDesResultats:TObjetResultats; begin showmessage ('hi'); v := strtofloat(Edit1.text); //vitesse du vent e1:= etatfils.iTemIndex ; z:= position.iTemIndex; nb:=1+filContact.ItemIndex ; q:= mtrFils.ItemIndex ; amb := strtofloat(Edit5.text); // tempERATURE ambiante R:= strtofloat(Edit6.text); // rayonnement solaire objettemplist2:=templist2.create(v,amb,r,e1,z,nb,q,I,SerieTheta,Resultat,rayon); T1:=objettemplist2.temperatureinitiale2(); resultattemp:=TMatrice.create(2,1); // après il me fait mon calcule de la température......
Partager