IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Forms Oracle Discussion :

Remplacer JDialog java dans Oracle Form 10G


Sujet :

Forms Oracle

  1. #1
    Futur Membre du Club
    Inscrit en
    Juillet 2010
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 12
    Points : 6
    Points
    6
    Par défaut Remplacer JDialog java dans Oracle Form 10G
    Bonjour à tous je travail sur un projet déjà développé sous java
    et que je dois importer et adapter sous oracle forms 10g.
    En fait mon problème est le suivant:
    je ne peux pas importer les classes de type swing comme les JDialog, les JTextFields etc..
    J'ai une classe qui utilise des méthodes natives et j'ai pas accès aux codes de ces dernières. Alors comment je pourrai remplacer le JDialogue java par un élément Oracle Forms 10g pour qu'il fasse la même chose?
    Merci de votre disponibilié

  2. #2
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Il suffit de créer une fenêtre de type dialog, de poser un canvas dessus avec tous les items nécessaires à la boite de dialogue.
    Ensuite, un Go_Item() ou Go_Block() suffit pour afficher la nouvelle fenêtre.

  3. #3
    Futur Membre du Club
    Inscrit en
    Juillet 2010
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 12
    Points : 6
    Points
    6
    Par défaut
    Merci Sheikyerbouti de votre réponse et je vous suis souvent par raport aux discussions et je suis trés flatté de vous voir me répondre.
    Voici le code de ma méthode JAVA qui a une JDialog déclarée dans la classe

    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
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    public static int GUICallBackFromJava_(int pGuiStateCallbackCtx, 
    			   int dwGuiState, 
    			   byte []  pbyResponse, 
    			   int dwMessage, 
    			   byte byProgress, 	
    			   int  pSampleBuffer,
    			   TFMModule.PT_DATA pData){
     
     
    		dlg.dispose();
    		if (dwGuiState == 1){	
     
    			switch (dwMessage){
    				case 0:
    				dlg.setTitle("Scanned Good Image\n");
    				dlg.dispose();
    				break;
     
    				case 1:
    				dlg.setTitle("Fingerprint not detected\n");
    				break;
     
    				case 2:
    				dlg.setTitle("Scanned Image is Too Light\n");
    				break;
     
    				case 3:
    				dlg.setTitle("Scanned Image is Too Dry\n");
    				break;
     
    				case 4:
    				dlg.setTitle("Scanned Image is Too Dark\n");
    				break;
     
    				case 5:
    				dlg.setTitle("Lower Finger to the Center\n");
    				break;
     
    				case 6:
    				dlg.setTitle("Raise finger to the Center\n");
    				break;
     
    				case 7:
    				dlg.setTitle("Move Finger to the Left\n");
    				break;
     
    				case 8:
    				dlg.setTitle("Move Finger to the Right\n");
    				break;
     
    				case 9:
    				dlg.setTitle("Scanned Image is Too Small\n");
    				break;
     
    				case 10:
    				dlg.setTitle("Scanned Image is Opaque\n");
    				break;
     
    				case 11:
    				dlg.setTitle("Scanned Finger is Unclear\n");
    				break;
     
    				case 12:
    				dlg.setTitle("Place Finger for 1st Scan\n");
    				break;
     
    				case 13:
    				dlg.setTitle("Place Finger for 2nd Scan\n");
    				break;
     
    				case 14:
    				dlg.setTitle("Place Finger for 3rd Scan\n");
    				break;
     
    				case 15:
    				dlg.setTitle("Remove Finger from Sensor\n");
    				break;
     
    				case 16:
    				dlg.setTitle("Consolidation failed\n");
    				break;
     
    				case 17:
    				dlg.setTitle("Consolidation success\n");
    				break;
     
    				case 18:
    				dlg.setTitle("Clean sensor\n");
    				break;
     
    				case 19:
    				dlg.setTitle("Keep finger on the sensor\n");
    				break;
     
    				case 20:
    				dlg.setTitle("Begin Non specific GUI\n");
    				break;
     
    				case 21:
    				dlg.setTitle("Begin GUI for verification\n");
    				break;
     
    				case 22:
    				dlg.setTitle("Begin GUI for enrollment\n");
    				dlg.setVisible(true);
    				break;
     
    				case 23:
    				dlg.setTitle("Begin GUI for finger detection\n");
     
    				break;
     
    				case 24:
    				dlg.dispose();
    				break;
     
    				case 25:
    				dlg.dispose();
    				break;
     
    				case 26:
    				dlg.dispose();
    				break;
     
    				case 27:
    				dlg.setTitle("BeginGUI for sensor calibration\n");
    				break;
     
    				case 28:
    				dlg.setTitle("Scanned Finger Swiped Too Quickly\n");
    				break;
     
    				case 29:
    				dlg.setTitle("Scanned Image is Skewed During scan\n");
    				break;
     
    				case 30:
    				dlg.setTitle("Finger is Removed Too Early\n");
    				break;
     
    				case 31:
    				dlg.setTitle("Place Finger in the Sensor\n");
    				break;
     
    				case 32:
    				dlg.setTitle("Begin Image Processing\n");
    				break;
     
    				case 33:
    				dlg.setTitle("Finger Scanning is in Progress\n");
    				break;
     
    				default: 
    				dlg.setTitle("No Message\n");
    				dlg.setVisible(true);
    				break;
    			}
     
    			dlg.setVisible(true);
    			if(dwMessage == 24 || dwMessage == 25 || dwMessage == 26){
    				dlg.setVisible(false);
    				dlg.dispose();
    			}	
    	}
     
    	return 0;
     
    }
    Ce JDialog s'affiche suivant le bon case et cette méthode est appelé via une méthode native qui fait une boucle.
    Par conséquent je ne peux pas modifier la méthode native. Alors comment je pourrai faire pour avoir la bonne valeur du case par un autre moyen.

  4. #4
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    On ne peut pas transposer comme ça un programme Java En Oracle Forms.
    Pour changer le titre d'une fenêtre sous Forms, il faut utiliser:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Set_Window_Property(...);
    Le case n'existe pas il faut utiliser des IF imbriqués:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    If x = 1 Then
      Set_Window_Property ('DIALOG', TITLE, 'le titre 1' ;
    ElsIf x = 2 Then
      Set_Window_Property ('DIALOG', TITLE, 'le titre 2' ;
    ElsIf x = 3 Then
    ...
    End if ;
    Show_Window('DIALOG');

  5. #5
    Futur Membre du Club
    Inscrit en
    Juillet 2010
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 12
    Points : 6
    Points
    6
    Par défaut
    Merci de votre disponibilité.

    Le probleme n'est pas de faire sous forms un dialog.
    En fait j'ai une classe xxxx.java ayant une fonction native (dont je n'ai pas accès) et qui utilise la fonction yyy qui s’exécute dans une de ses boucles.
    yyy contient le Jdialog et je ne vois pas comment je dois procéder pour
    récupérer ce qui est dans la boucle.

  6. #6
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Récupérer quoi ? Du code Java dans une appli Forms ? Je ne comprends rien à votre sujet.

Discussions similaires

  1. Réponses: 0
    Dernier message: 10/05/2010, 23h58
  2. Réponses: 1
    Dernier message: 24/03/2009, 10h44
  3. Réponses: 2
    Dernier message: 25/04/2008, 19h53
  4. Oracle forms 10g insertion dans un tableau
    Par groy1 dans le forum Forms
    Réponses: 4
    Dernier message: 29/10/2007, 12h21
  5. Réponses: 1
    Dernier message: 27/04/2006, 18h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo