VIDÉOTHÈQUE VB/XML

106 Messages postés 39 Date d'inscription jeudi 17 janvier 2002 Statut Membre Dernière intervention 14 janvier 2008 - 20 avril 2007 à 09:20
seb03000 Messages postés 2 Date d'inscription mardi 10 août 2010 Statut Membre Dernière intervention 21 février 2017 - 20 févr. 2017 à 03:01
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/42358-videotheque-vb-xml

seb03000 Messages postés 2 Date d'inscription mardi 10 août 2010 Statut Membre Dernière intervention 21 février 2017
20 févr. 2017 à 03:01
Merci pour le partage jolie bouleau , une mise a jour vas s'imposé ou pas ???
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
9 mai 2007 à 21:48
Le projet était de concurrencer Google mais je peux plus car dans quelques heures je serait à la rue. Je mettrait un message(pour pas gener ce topic) sur le forum.
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
9 mai 2007 à 13:04
Bonjour, désolé pour cette réponse tardive, mais j'étais désespéré du coup, je ne venais plus voir!
Merci 106 pour tes remarques, mais comme le confirme OneHacker, l'interface n'est pas mon intérêt premier (en effet je pourrai mettre une msgbox sur l'évènement onclick du bouton supprimer proposant de valide ou non la suppression) mais ce qui m'intéresse c'est de savoir si mon code pouvait être développé de façon plus optimal.

@OneHacker: quel genre de projet mes tu en place?
La je suis en révision de mon BTS info que je passe lundi, donc je n'ai plus beaucoup de temps, mais dit toujours je verrai bien si je peux t'aider ;-)
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
4 mai 2007 à 10:15
106, pour ce que tu apelles les masques, j'ai déjà fait la remarque.
koalafou13, je suis très occupé car j'ai un gros projet de programmation. Si tu veux m'aider no souci.
106 Messages postés 39 Date d'inscription jeudi 17 janvier 2002 Statut Membre Dernière intervention 14 janvier 2008
4 mai 2007 à 08:54
Bonjour,
Je m'interesse, mais je débute et je n'ai pas beaucoup de temps à consacrer.
Deux remarques :
- Tu n'as pas mis de bouton annuler sur les masques d'ajout, de modification ou de suppression d'éléments d'une médiathèque.
- Lorsque l'on déplace la fenêtre principale, les masques ouverts ne suivent pas.
Ce sont des remarques sur l'esthétique.

Autrement pas de bug rencontré.
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
3 mai 2007 à 15:14
bon, je vois que mon code hormis OneHacker n'interesse personne...même pas une petite remarque ???
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
24 avril 2007 à 19:10
Ok, là j'apprends un gars à prog donc je m'en occupe ce soir.

Merci pour le code pour XML.
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
24 avril 2007 à 17:26
ohh j'avais pas vu la note! merci beaucoup!!!

mais je cherche des avis et conseils s'il vous plait !!!

merci
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
24 avril 2007 à 16:02
ah oui en effet!!

voila:
chargement du fichier xml
doc = New XmlDocument()
doc.Load("c:\gestcle\bdXml\cle.xml")
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
24 avril 2007 à 15:43
Oui ca je le sais merci, mais je vois nulle part où tu lis le fichier xml
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
24 avril 2007 à 15:42
tien voila des infos que j'ai récolté au fur et à mesure sur le xml:

Tout d'abord, il faut créer un objet de type xmldocument. Cet objet sera la base d'exploitation du fichier xml.
-
On défini l'objet
Dim doc As XmlDocument
Puis on l'instencie
doc = New XmlDocument()

ensuite il faut créer un second objet capable de travailler sur les n'uds du xmlelement déclaré précédemment
-
on défini l'objet
Dim noeud As XmlElement
Puis on l'initialise
noeud = doc.DocumentElement

maintenant je peux récupérer la valeur des attributs de n'importe quel n'ud, il m?est possible de compter le nombre de noeud
-
pour un indice donné, je récupère la valeur de l'attribut Name du noeud
noeud.ChildNodes(indice).Attributes("Name").InnerText
-
il est possible de compter le nombre de n'uds
noeud.ChildNodes.Count
-
il est possible de compter le nombre d'attributs
noeud.ChildNodes(indice).Attributes.count
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
24 avril 2007 à 15:40
ah ok!
Sinon ça marche de ton côté?
Connais tu quelqu'un qui s'y connait en xml? Car je n'arrive pas à avoir d'avis concernant mon code! ;-(
je cherche vraiment à progresser! j'aimerai que les gens qui viennent voir ma source me dise au moins si c'est nul ou autre car j'ai remarqué que ma source à été visité près de 500 fois mais personne à part toi n'est venu laisser un message (et je t'en remercie d'ailleurs!!)

Donc je fais appel à tout ceux qui regardent ma source! Un avis s'il vous plait !!!! Un grand merci
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
24 avril 2007 à 15:33
Je sais pas gérer le XML mais j'ai DL un cours dessus donc je vais voir.
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
24 avril 2007 à 15:32
ahahaha ! pourtant je t'avais bien dit Location ;-)
je suis ravi si ca te plait!!
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
24 avril 2007 à 15:31
ca marche très bien chez moi!
as tu des conseils concernant le code pour le traitement du fichier XML
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
24 avril 2007 à 15:31
Ah mais je comprends pourquoi ca marche pas chez moi : je faisait la même chose avec l'évènement Move.
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
24 avril 2007 à 15:30
puis:
Public Class Interface_principale

Dim X As Integer
Dim Y As Integer

Private Sub Interface_principale_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)

X = Me.Location.X
Y = Me.Location.Y

end sub

end class
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
24 avril 2007 à 15:28
Private Sub Interface_principale_LocationChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.LocationChanged

'je détermine la nouvelle location de la form principale

Dim Xf2 As Integer = Me.Location.X
Dim Yf2 As Integer = Me.Location.Y

Dim Xfinal As Integer = Xf2 - X
Dim Yfinal As Integer = Yf2 - Y

X = Me.Location.X
Y = Me.Location.Y

'je détermine la variation des X et Y
Dim posX As System.Drawing.Point
posX.X = Xfinal

Dim posY As System.Drawing.Point
posY.Y = Yfinal

'je récupère la position de la forme suppr
Dim Xsuppr As Integer = Adm.Location.X
Dim Ysuppr As Integer = Adm.Location.Y

'je modifie cette position
Xsuppr = Xsuppr + Xfinal
Ysuppr = Ysuppr + Yfinal

Dim SupprX As System.Drawing.Point
SupprX.X = Xsuppr

Dim SupprY As System.Drawing.Point
SupprY.Y = Ysuppr

'je définie donc la nouvelle position de la form suppr
Adm.Location = New Point(SupprX.X, SupprY.Y)

End Sub
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
24 avril 2007 à 15:28
voila j'ai trouvé comment faire bouger deux forms en même temps ;-)
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
23 avril 2007 à 20:29
Ni l'un ni l'autre. Problème de l'évènement Move qui ne se déclenche jamais.
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
23 avril 2007 à 20:19
"Pourtant tu m'avait dit que tu l'avait modifié sur MSN." ????
Non pas du tout, tu dois confondre je n'ai pas d'adresse MSN

"Et ton code ne marche pas car les évènement des fenêtres enfants ne se déclenchent pas"
Je ne vois pas bien? J'ai téléchargé l'archive sur code source, pour voir si des erreurs provenaient de ma source, mais je ne constate rien de ce que tu me rapporte? C'est étrange!

Au final, qu'est ce qui ne fonctionne pas dans mon code? Car je ne comprends pas bien
-tu ne peux pas ajouter ni supprimer ni modifier une médiathèque?
-ou est ce juste un problème d'affichage?

Pourquoi instancier les forms?
Ce ne sont que des conteneurs, j'ai créé la Class fonction qui contient toutes les fonction nécessaires (ajout d'un noeud xml, comptage des n'ud, suppression...)
Et j'instancie cette classe dans chaque forms.
Les forms n'ont aucun lien entre elles.

Je ne suis débutant en vb/poo donc j'essai de comprendre autant que toi le problème mais je n'arrive pas à voir justement le problème dont tu me parles car chez moi, l'application ne présente pas de signe particulier d'erreurs ??!

À très vite
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
23 avril 2007 à 19:55
Pourtant tu m'avait dit que tu l'avait modifié sur MSN.

Et ton code ne marche pas car les évènement des fenetres enfants ne se déclenchent pas et je trouve bizarre qu'il y a pas d'erreeur alors que les 6 forms ne sont instanciées nulle part !
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
23 avril 2007 à 19:50
désolé pour le retard mais j'étais en plein boulot! se ne sont pas des fenêtres filles, elles n'ont aucun lien d'existence avec la fenêtre dite "principale"

dans mon projet j'ai créé 6 forms. normalement elles devraient être toutez affichée au lancement de l'application, mais j'ai initialisé le form.visible=false pour les forms que je ne veux pas voir.

Pourquoi veux tu que je mette à jour l'archive? je n'ai pas fait d'autre modif sur le programme, le but premier de ma démarche était de savoir si le traitement du fichier xml que je faisais était correct, si il n'y avait pas d'autre moyen plus optimisé pour faire la même chose. Ce qui relève de l'affichage n'était pas ma préocupation première.

dsl j'ai pas de MSN ni autre d'ailleur

pour que les fenêtres se suivent essai ça:

Private Sub Interface_principale_LocationChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.LocationChanged

(dans la form dite principale)
Dim pose_x As Integer = Me.Location.X
Dim pose_y As Integer = Me.Location.Y

(form1 est le nom de la form que tu veux faire suivre)
form1.location.x = (pose_x) + (form1.pose_x)
form1.location.y = (pose_y) + (form1.pose_y)

End Sub

bon je te donen vite fait une idée je n'ai pas testé et ca ne marchera surement pas dans cet exemple car il faut gérer si la form est déplacé vers le haut ou vers le bas, vers la gauche ou vers la droite.. ce qui engendrerait surment un calcul différent de ma simple addition mais je te donne juste une piste vite fait car je n'ais pas beaucoup de temps devant moi donc recherche dans cette direction!

lorsque ta form principale bouge tu compare la nouvelle position par rapport à l'ancienne puis tu applique le déplacement aux autres forms

ex:
form principale
x=100
y=100

nouvelle position
Nx=200
Ny=200

Nx-x=100
Ny-y=100

la form à fait un déplacement de 100;100
donc les autres forms doivent aussi faire un déplacement de 100;100

ainsi:

form1.location.x=form1.location.x + (Nx-x)
form1.location.x=form1.location.y + (Ny-y)

voila j'espère t'avoir aider!! à plus tard
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
23 avril 2007 à 03:04
Met à jour le zip ou passe moi ton MSN par MP que j'essaye d'optimiser l'affiche ou que les fenêtre enfants suivent la form principale.

Sinon j'arrive toujours pas à comprendre comment tu affiches les fenêtes alors qu'elles sont nulles par instanciées.
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
21 avril 2007 à 18:55
Oui, de mon côté le code que j'ai mis pour que les fenêtre enfants suivent ne marche pas à tout les coups, je pense qu'il faudrait un peu nettoyer ton code. Et si je fait ça c'est parceque sur mon écran je peux meme pas rajouter accèder aux boutons ok des fenêtre enfants comme pour ajouter, modifier,supprimer.
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
21 avril 2007 à 13:51
ahh ouf tu me rassures ;-)
alors, tu as des idées d'optimisation?
à plus tard
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
21 avril 2007 à 11:59
Ah non ca marche tout seul maintenant :p
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
21 avril 2007 à 11:57
Justement il y a pas Adm.Designer.vb dans ton projet. Faut que ce soit moi qu'il l'ajoute.
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
21 avril 2007 à 10:44
1-peut être t'es tu trompé entre le Adm.Designer.vb et Adm.vb
Adm.Designer.vb gère les propriétés d'affichage de la form Adm
Adm.vb gère les actions associées aux éléments de la form

2-regarde si par inadvertance que tu n'es pas tout mis en commentaire (chez moi les commentaires sont en vert mais bon..)

à plus tard
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
21 avril 2007 à 10:40
ah le texte dans le code!
ba la franchement je ne sais pas??? moi tout es bien affiché et j'ai regardé à partir de l'archive que j'ai téléchargé sur mon post donc ca doit venir de ton vb2005 je pense?

pour travailler tu as bien ouvert Vidéotheque.vbproj ? (question bète mais peut être que..)
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
20 avril 2007 à 21:49
Je sais pas laquelle désolé mais je parle du texte dans le code pas du fond.
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
20 avril 2007 à 20:59
1-La fenêtre Adm.vb tout le texte est en gris et il y pas le code générer par le Concepteur il y a que les procédures.

C'est blizzard! Je n'ai pas de problèmes??? Pour la couleur du texte, j'ai remarqué que sur d'autre pc, la couleur de fond de la forme est fonction du thème de Windows! Je ne sais pas comment faire pour forcer la couleur de fond? Idem pour le texte??? J'ai mis des couleurs pourtant mais cela varie avec le fond de Windows je pense! Du coup, tu ne peux pas ajouter de média?

Tu as quelle version de framework?
Moi c'est la 20.50727 (la dernière il me semble)

Et je trouve qui bizarre que tu n'instancies pas les forms "enfants" mais que tu mes leur opacité à zéro pourtant ça les créers car ça lève l'évènement OnLoad des fenêtres enfants.

Je joue sur leur visibilité:
Au démarrage de l'application seul la form principale est visible.
À la sélection d'un menu je fais un affichage progressif de la form appelée.
Peux tu m'expliquer plus clairement le problème car je ne saisi pas très bien?

merci
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
20 avril 2007 à 20:44
Je viens de regarder mon programme, en faite pour la fenêtre Adm.vb, il faut sélectionner tous les champs sinon on ne peut enregistrer un média. (C'est de ça que tu me parles?)!

Je comprends pourquoi tu as une erreur!
Tu as voulu utiliser la procédure ActualiserToolStripMenuItem_Click !
Or j'ai oublié de l'enlever car je réinitialise les listes à chaque modification!
Cette procédure était appelée lors du clic sur le menu actualisé (qui n'a plus lieu d'être)

ainsi, si tu ragarde bien le code:

listeFilm.Items.Clear()
fonction.init()

Dim i As Integer
Dim nb_tot_film As Integer = fonction.get_nb_film(videotheque)
Dim valeur As String

'initialisation de la liste de films
For i = 1 To nb_tot_film
valeur = fonction.get_attribut("Titre", i, videotheque)
listeFilm.Items.Add(valeur)
Next i

fin code

videotheque n'a pas de valeur! sinon, as tu remarqué d'autres erreurs?

merci beaucoup ;-)
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
20 avril 2007 à 20:37
La fenêtre Adm.vb tout le texte est en gris et il y pas le code générer par le Concepteur il y a que les procédures.

Et je trouve qui bizarre que tu n'instancies pas les forms "enfants" mais que tu mes leur opacité à zéro pourtant ca les créers car ca lève l'évènement OnLoad des fenêtres enfants.
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
20 avril 2007 à 20:33
Merci, je vais voir de quoi il s'agit car je l'avait testé avant et je n'avais jamais eu le problème dont tu me parle!
Quel genre de problème réside pour la fenêtre Adm.vb?
Merci beaucoup
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
20 avril 2007 à 20:14
Lorsque j'ai sélectionné une bibliothèe et sélectionné un élément de la bibliothèque, je clique sur supprimer dans le MainMenu et dans la fenêtre qui apparait, dans le Menu je clique sur actualiser et ca me fait une erreur dans la ligne 66 de la classe suppr.vb

avec cette erreur :

L'exception System.MissingMemberException n'a pas été gérée
Message="Aucun membre par défaut trouvé pour le type 'Integer'."

Je n'ai pas compris de quoi il s'agit.

Sinon j'ai fait que lorsque on ajoute une bibliothèque ou supprime, automatiquement la form se ferme et que les autres formes se déplacent avec la form principale.

Sinon j'ai fait un peu de ménage dans le code et renommé par exemple la form principale comme frmMain.

Je me suis pas occupé de la fenêtre Adm.vb car elle a un gros problème.
koalafou13 Messages postés 31 Date d'inscription mardi 4 juillet 2006 Statut Membre Dernière intervention 9 mai 2007
20 avril 2007 à 20:12
Merci beaucoup!!! J'attends avec impatience
106 Messages postés 39 Date d'inscription jeudi 17 janvier 2002 Statut Membre Dernière intervention 14 janvier 2008
20 avril 2007 à 09:20
Bonjour,
Je suis très interesser par l'utilisation de fichier XML pour stocker des données localement.
Je vais consulter ton source de ce pas.

A+
Rejoignez-nous