Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
6148 connectés 

 


 Mot :   Pseudo :  
 
 Page :   1  2  3
Auteur Sujet :

java-sql-interface swing

n°956881
beemer
Posté le 19-01-2005 à 21:14:10  profilanswer
 

Reprise du message précédent :
ca existe aussi avec Vector ...  
m'enfin bref, ceux qui ont compris, ont deja compris
 
the real -- : ca cert a quoi de prototyper quoi que ce soit si tu peux pas l'utiliser apres?!
 
jubijub : bcp (la plupart meme) de compos swing permettent aussi de changer les donnes du modele via le viewer


Message édité par beemer le 19-01-2005 à 21:15:22
mood
Publicité
Posté le 19-01-2005 à 21:14:10  profilanswer
 

n°956893
benou
Posté le 19-01-2005 à 21:28:27  profilanswer
 

beemer a écrit :


the real -- : ca cert a quoi de prototyper quoi que ce soit si tu peux pas l'utiliser apres?!


surtout que la ca ajoutait juste un "new ArrayTableModel()" ... une 20aine de caractères quoi

n°956901
the real m​oins moins
Posté le 19-01-2005 à 21:34:45  profilanswer
 

beemer a écrit :


the real -- : ca cert a quoi de prototyper quoi que ce soit si tu peux pas l'utiliser apres?!


à faire un prototype ?

n°956904
beemer
Posté le 19-01-2005 à 21:37:36  profilanswer
 

the real moins moins a écrit :

à faire un prototype ?

:pt1cable:  :lol:  

n°956908
the real m​oins moins
Posté le 19-01-2005 à 21:38:40  profilanswer
 

(de gui, i.e., un truc qui fait rien a part montrer à quoi la gui pourrait ressembler)

n°956926
benou
Posté le 19-01-2005 à 21:46:42  profilanswer
 

the real moins moins a écrit :

(de gui, i.e., un truc qui fait rien a part montrer à quoi la gui pourrait ressembler)

c'est plutot du maquetage nan ? [:petrus75]
 
puis bon, l'économie de quelques caractères de code pour un cas d'utilisation rare pour justifier une bizarerie d'une API, ca fait un peu peu ...

n°956960
nraynaud
lol
Posté le 19-01-2005 à 22:03:48  profilanswer
 

benou a écrit :

surtout que la ca ajoutait juste un "new ArrayTableModel()" ... une 20aine de caractères quoi


 
bah merde :  

Code :
  1. public JTable(final Object[][] rowData, final Object[] columnNames) {
  2.         this(new AbstractTableModel() {
  3.             public String getColumnName(int column) { return columnNames[column].toString(); }
  4.             public int getRowCount() { return rowData.length; }
  5.             public int getColumnCount() { return columnNames.length; }
  6.             public Object getValueAt(int row, int col) { return rowData[row][col]; }
  7.             public boolean isCellEditable(int row, int column) { return true; }
  8.             public void setValueAt(Object value, int row, int col) {
  9.                 rowData[row][col] = value;
  10.                 fireTableCellUpdated(row, col);
  11.             }
  12.         });
  13.     }

n°957027
Jubijub
Parce que je le VD bien
Posté le 19-01-2005 à 23:28:34  profilanswer
 

benou a écrit :

c'est plutot du maquetage nan ? [:petrus75]
 
puis bon, l'économie de quelques caractères de code pour un cas d'utilisation rare pour justifier une bizarerie d'une API, ca fait un peu peu ...


 
+1 : un proto c fonctionnel, ou quasiment
une maquette, c comme tu dis --, c juste visuel

n°957051
crozet
Posté le 19-01-2005 à 23:46:25  profilanswer
 

En fait moi j'ai utilisé un tableau d'objet pour récupérer les informations sur les tables mysql parce que c'est ce qui me paraissait le plus simple.
Mais si vous pensez que après, avec une autre solution, c'est plus facile, dites le moi, je chercherai sur cette voie.
 
Sinon, à propose du setData, on peut pas utiliser une classe maTable qui hérite de DefaultTableModel et utiliser après le setDataVector? Ensuite ajouter 1 listener sur le changement des valeurs, et pas de la forme, vu que c'est intégré à  un ScrollPane?

n°957053
Jubijub
Parce que je le VD bien
Posté le 19-01-2005 à 23:49:58  profilanswer
 

-->ben c faire une arrayList d'arrayList...encore que peut etre qu'on peut optimiser ca avec des hashmap avec comme clé les index colone/ligne, je m'y connais pas assez...
 
--> en quoi c différent de ma solution ?


---------------
Jubi Photos : Flickr - 500px
mood
Publicité
Posté le 19-01-2005 à 23:49:58  profilanswer
 

n°957056
crozet
Posté le 20-01-2005 à 00:06:59  profilanswer
 

La vache, c'est rapide les réponses sur hardware! Bon, je vais me renseigner pour les araylists.
Sinon, c'est ta solution jubijub, mais avec seulement ce qui m'interesse le plus, pas de d'evolution du contenu mais seulement des données.

n°957171
Jubijub
Parce que je le VD bien
Posté le 20-01-2005 à 10:29:49  profilanswer
 

On doit pouvoir le rendre plus générique (mais pas au 1.5 ;) ) en faisant que ca prenne une Collection de Collection (Collection étant l'interface qu'implémente Vector, ArrayList, et autre...)
 
--> les données = le contenu, je comprends pas ce que tu veux dire...l'event que je fire prévient le tableau que les données ont changé...
 
edit : pparement pas, l'interface définit pas de méthode pour récupérer le contenu, apparement c propre aux implémentations


Message édité par Jubijub le 20-01-2005 à 12:12:09

---------------
Jubi Photos : Flickr - 500px
n°957394
nraynaud
lol
Posté le 20-01-2005 à 13:40:24  profilanswer
 

Jubijub a écrit :

On doit pouvoir le rendre plus générique (mais pas au 1.5 ;) ) en faisant que ca prenne une Collection de Collection (Collection étant l'interface qu'implémente Vector, ArrayList, et autre...)


ça serait bien qu'il évite les Sets de Sets dans son tableau quand même [:petrus75] (ie, List de List au pire, mais plutôt un TableModel fondé sur un DataSet, ça me parraît plus intelligent et moins gourmand en ressources).

n°957402
Jubijub
Parce que je le VD bien
Posté le 20-01-2005 à 13:46:45  profilanswer
 

pkoi ? c quoi un DataSet ?


---------------
Jubi Photos : Flickr - 500px
n°957423
nraynaud
lol
Posté le 20-01-2005 à 14:04:06  profilanswer
 

ça s'appelle pas DataSet le résultat d'une requête JDBC ?

n°957650
benou
Posté le 20-01-2005 à 17:11:36  profilanswer
 

ResultSet


---------------
ma vie, mon oeuvre - HomePlayer
n°957652
benou
Posté le 20-01-2005 à 17:12:29  profilanswer
 

mais le ResultSet n'est pas idéal à utiliser : t'as pas d'accès direct en x,y


---------------
ma vie, mon oeuvre - HomePlayer
n°957661
nraynaud
lol
Posté le 20-01-2005 à 17:22:33  profilanswer
 

benou > on est pas obligé d'y passer ?

n°957668
benou
Posté le 20-01-2005 à 17:29:55  profilanswer
 

nraynaud a écrit :

benou > on est pas obligé d'y passer ?


je comprend pas la question. d'y passer à quoi ?


---------------
ma vie, mon oeuvre - HomePlayer
n°957672
nraynaud
lol
Posté le 20-01-2005 à 17:33:25  profilanswer
 

dans le chemin BDD->écran, on est pas obligé de passer par un ResultSet ?

n°957676
benou
Posté le 20-01-2005 à 17:37:55  profilanswer
 

sisi bien sûr.
ce que je voulais dire, c'est que tu ne peux pas faire un TableModel qui se contentera de déleguer les appels au ResultSet, t'es obligé de lire le resultset et de stocker ca dans une Colelction quelconque pour pouvoir reservir les données ...
 
Le seul intérêt que j'y vois c'est de faire du lazy loading, mais ca pause le problême de la connexion à la BDD que tu gardes plus longtemps ...


---------------
ma vie, mon oeuvre - HomePlayer
n°957679
nraynaud
lol
Posté le 20-01-2005 à 17:41:11  profilanswer
 

ah ? c'est pas bien le lazy-loading ? j'aurais crû le contraire (pour répartir doucement le freinage dû au réseau sur le mouvement de scrolling de l'ui en gros).

n°957680
beemer
Posté le 20-01-2005 à 17:41:38  profilanswer
 

tout ca pour pas passer par un machin[][] ou un list de list ... :D

n°957681
nraynaud
lol
Posté le 20-01-2005 à 17:42:41  profilanswer
 

bon, si c'est pas bon de garder le ResultSet trop longtemps, alors le Object[][] (wrappé éventuellement), c'est très bien :o

n°957683
nraynaud
lol
Posté le 20-01-2005 à 17:43:39  profilanswer
 

nraynaud a écrit :

(pour répartir doucement le freinage dû au réseau sur le mouvement de scrolling de l'ui en gros).


 

beemer a écrit :

tout ca pour pas passer par un machin[][] ou un list de list ... :D


tu as des PBs de lecture ?

n°957685
beemer
Posté le 20-01-2005 à 17:45:37  profilanswer
 

un ResultSet n'a pas d'api pour recuperer sa taille ....


Message édité par beemer le 20-01-2005 à 17:53:16
n°957688
beemer
Posté le 20-01-2005 à 17:46:41  profilanswer
 

nraynaud a écrit :

tu as des PBs de lecture ?


t'es prof par hasard ou tu bosses dans la recerche ?! :D

n°957695
nraynaud
lol
Posté le 20-01-2005 à 17:51:33  profilanswer
 

beemer a écrit :

t'es prof par hasard ou tu bosses dans la recerche ?! :D


mon entreprise produit 5M d'automobiles par an [:petrus75]

n°957697
beemer
Posté le 20-01-2005 à 17:52:55  profilanswer
 

nraynaud a écrit :

mon entreprise produit 5M d'automobiles par an [:petrus75]


ca doit etre a cause des design patterns  :whistle:  
 

n°957703
the real m​oins moins
Posté le 20-01-2005 à 17:58:40  profilanswer
 

beemer a écrit :

un ResultSet n'a pas d'api pour recuperer sa taille ....


ben tu t'en fous, tu scrolles dans ton resultset, tu recuperes, tu caches et en voiture simone, t'es pas obligé de ne faire *que* ce que te demande le get(x,y).


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°957706
beemer
Posté le 20-01-2005 à 18:00:02  profilanswer
 

the real moins moins a écrit :

ben tu t'en fous, tu scrolles dans ton resultset, tu recuperes, tu caches et en voiture simone, t'es pas obligé de ne faire *que* ce que te demande le get(x,y).


je parle du fait que si tu veux quand meme arriver a un machin[][] il faut d'abord passer par une collection dynamique

n°957710
the real m​oins moins
Posté le 20-01-2005 à 18:06:27  profilanswer
 

un cache oui. tu voudrais pas non plus aller repiocher en base 49 fois pour 7 records de 7 colonnes [:marc]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°957712
benou
Posté le 20-01-2005 à 18:12:32  profilanswer
 

spa toi qui aime bien le lazy loading ? [:petrus75]
 
edit: merde, confondu avec nraynaud


Message édité par benou le 20-01-2005 à 18:12:59

---------------
ma vie, mon oeuvre - HomePlayer
n°957717
Jubijub
Parce que je le VD bien
Posté le 20-01-2005 à 18:22:26  profilanswer
 

nraynaud aime tt ce qui est lazy :)


---------------
Jubi Photos : Flickr - 500px
n°957719
nraynaud
lol
Posté le 20-01-2005 à 18:24:22  profilanswer
 

oué je suis un gros flemmard.

n°957723
the real m​oins moins
Posté le 20-01-2005 à 18:29:46  profilanswer
 

benou a écrit :

spa toi qui aime bien le lazy loading ? [:petrus75]
 
edit: merde, confondu avec nraynaud


ben c'est lazy, quand tu vas afficher ta table, il va te demander les cellules une par une, et tu vas loader les rows dont tu as besoin au fur et à mesure.


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°957731
nraynaud
lol
Posté le 20-01-2005 à 18:44:45  profilanswer
 

-- > non, parce que le scrollpane va vouloir connaître le preferedSize de sa vue (la JTable) pour calculer la longueur de la barre à afficher, et que pour calculer le preferedSize, il faut connaître la taille du renderer de toutes les cellules et donc les charger toutes.

n°957736
Jubijub
Parce que je le VD bien
Posté le 20-01-2005 à 19:01:30  profilanswer
 

pis le preferedviewportsize c pratique de la modifier dès que le tableau est initialisé, avant de l'insérer : ca permet de le régler proprement en hauteur, en demandant la hauteur d'une cell, et en multipliant par le nb de cell qu'on veut voir affiché


---------------
Jubi Photos : Flickr - 500px
n°957743
the real m​oins moins
Posté le 20-01-2005 à 19:21:10  profilanswer
 

nraynaud a écrit :

-- > non, parce que le scrollpane va vouloir connaître le preferedSize de sa vue (la JTable) pour calculer la longueur de la barre à afficher, et que pour calculer le preferedSize, il faut connaître la taille du renderer de toutes les cellules et donc les charger toutes.


bah tu peux pas leur donner une valeur fixe et/ou adapter une fois que la premiere page est loadée ?
 
dans le cas d'un browser sql, en general ça t'affiche des largeurs fixes, à l'utilisateur d'adapter celles qu'il veut voir, au besoin..
 
 
 
ou bien rien à voir? [:trofub]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°957794
Jubijub
Parce que je le VD bien
Posté le 20-01-2005 à 20:28:44  profilanswer
 

si tu peux spécifier la taille du viewport...mais c assez sale de le faire au début, parce que tu peux etre sur que ta taille sera pas celle du tableau "rempli", et donc tu risque des pbs d'affichage, genre tableau trop grand pour rentrer dans la zone impartie


---------------
Jubi Photos : Flickr - 500px
n°957886
beemer
Posté le 20-01-2005 à 21:24:16  profilanswer
 

:ouch:

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3

Aller à :
Ajouter une réponse
 

Sujets relatifs
[JAVA] envoyer un message simultanement aux clients[JAVA] Comment faire un wait ?
[Java/SNMP] Convertion MIB/XML[Java]Projet Débutant / faisabilité
[Java][JMF]Modification d'une vidéo[Java] java.util.Random pas si random que ça :(
eclipse et annotations de java 5[Java]Mysql+jtextarea+CR
[JAVA] RMI : Le serveur peut-il exécuter une fonction cliente ?[JAVA] interface graphique avec Swing
Plus de sujets relatifs à : java-sql-interface swing


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)