stocker info
stocker info
Comment fait-on pour stocker des infos (de types texte) dans un fichier ,avec la version 3.92 de PB.
Merci
Merci
Sa je l'ai déjà fait mais voila le code
Je voudrais stocker des infos dans le fichier "systemlog.txt".
Et que par la suite, ajouter d'autres infos, avec celles déjà présent .
PS:Si vous n'avez pas compris posser des quetions.
Code : Tout sélectionner
LoadImage(1, "Data/moi.bmp")
If OpenWindow(0,0,0,400,365,#PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_ScreenCentered,"gestionnaire de cd" )
If CreateGadgetList(WindowID())
CreateMenu(0, WindowID())
MenuTitle("Fichier")
MenuItem(1, "&Ajouter une donnée" +Chr(9) +"Ctrl+N")
AddKeyboardShortcut(0,#PB_Shortcut_Control|#PB_ShortCut_N,1)
MenuItem(8, "&Modifier donnée")
MenuBar()
MenuItem(2, "&Quitter" +Chr(9) +"Echap")
AddKeyboardShortcut(0,#PB_Shortcut_Escape,2)
MenuTitle("Aide")
MenuItem(3, "&Aide"+Chr(9) +"F1")
AddKeyboardShortcut(0, #PB_Shortcut_F1,3)
MenuItem(4, "&A propos de...")
PanelGadget(2,5,5,390,320)
AddGadgetItem (2,-1,"Logiciels (0)")
ListIconGadget(3,5,5,375,285,"Nom",170,#PB_ListIcon_FullRowSelect|#PB_ListIcon_MultiSelect )
AddGadgetColumn(3,1,"Nombre cd",100)
AddGadgetColumn(3,2,"Statue",100)
AddGadgetItem (2,-1,"Jeux vidéos (0)")
ListIconGadget(4,5,5,375,285,"Nom",170,#PB_ListIcon_FullRowSelect|#PB_ListIcon_MultiSelect )
AddGadgetColumn(4,1,"Nombre cd",100)
AddGadgetColumn(4,2,"Statue",100)
AddGadgetItem (2,-1,"Divx (0)")
ListIconGadget(5,5,5,375,285,"Nom",170,#PB_ListIcon_FullRowSelect|#PB_ListIcon_MultiSelect )
AddGadgetColumn(5,1,"Nombre cd",100)
AddGadgetColumn(5,2,"Statue",100)
CloseGadgetList()
EndIf
CreateStatusBar(0, WindowID(0))
StatusBarText(0,0," 0 CD répertorié.")
EndIf
Procedure reead()
OpenFile(0, "systemlog.txt")
If ReadString()="debut"
Repeat
AddGadgetItem(3,CountGadgetItems(3)+1,ReadString())
Until ReadString() = "end"
Else
MessageRequester("Erreur","Erreur lors de l'ouverture du fichier de sauvegade",#PB_MessageRequester_Ok)
EndIf
CloseFile(0)
EndProcedure
Procedure ouvrir_fenetre_cd()
If OpenWindow(1,0,0,200,130,#PB_Window_SystemMenu|#PB_Window_ScreenCentered,"Ajouter une donnée" )
If CreateGadgetList(WindowID(1))
TextGadget(1, 7, 10, 100, 20, "Nom du cd :")
StringGadget(11,70,8,120,20,"")
TextGadget(12, 35, 37, 100, 20, "Type :")
OptionGadget(13, 75, 35, 100, 20, "Logiciel")
OptionGadget(14, 75, 53, 100, 20, "Jeux vidéo")
OptionGadget(15, 75, 73, 100, 20, "Divx")
ButtonGadget(16, 40, 100, 50, 20, "Valider" )
ButtonGadget(17, 115, 100, 50, 20, "Terminer")
EndIf
EndIf
Repeat
Event = WaitWindowEvent()
If (GetGadgetState(13)=0)And(GetGadgetState(14)=0)And(GetGadgetState(15)=0)
DisableGadget(16, 1)
Else
DisableGadget(16, 0)
EndIf
If Event = #PB_EventGadget
Select EventGadgetID()
Case 17
Event = #PB_EventCloseWindow
Case 16
If (GetGadgetState(13)=1)
lieu = 3
EndIf
If (GetGadgetState(14)=1)
lieu = 4
EndIf
If (GetGadgetState(15)=1)
lieu = 5
EndIf
OpenFile(0, "systemlog.txt")
If ReadString()="debut"
WriteStringN(GetGadgetText(11))
WriteString("end")
EndIf
CloseFile(0)
reead()
Event = #PB_EventCloseWindow
ouvrir_fenetre_cd()
EndSelect
EndIf
Until Event = #PB_EventCloseWindow
CloseWindow(1)
EndProcedure
Procedure fenetre_aide()
If OpenWindow(2,0,0,200,230,#PB_Window_SystemMenu|#PB_Window_ScreenCentered,"Aide" )
If CreateGadgetList(WindowID(2))
TextGadget(6, 5, 5, 190, 50, "Ce logicel a été créé afin de gérer vos propres CD-Rom.(Savoir où se trouvent-ils, leur nombre ou leur type).")
TextGadget(7, 20, 55, 160, 170, "1_ Cliquez sur : (Fichier/Ajouter une donnée.) 2_Sélectionnez le type de cd (logiciel/jeux/divx). 3_Entrez le nom de la nouvelle donnée. 4_Cliquez sur (Ok) pour valider votre donnée. Vous pouvez également modifier des données en cliquant sur (Fichier/modifier donnée). ")
EndIf
EndIf
Repeat
Event = WaitWindowEvent()
Until Event = #PB_EventCloseWindow
CloseWindow(2)
EndProcedure
Procedure a_propos()
If OpenWindow(3,0,0,200,200,#PB_Window_SystemMenu|#PB_Window_ScreenCentered,"A propos de..." )
If CreateGadgetList(WindowID(3))
ImageGadget(0, 50,10,100,83,UseImage(1))
TextGadget(9, 60, 170, 100, 50, "[T_K]ptit_sissi")
EndIf
EndIf
Repeat
Event = WaitWindowEvent()
Until Event = #PB_EventCloseWindow
CloseWindow(3)
EndProcedure
reead()
Repeat
Event = WaitWindowEvent()
DisableMenuItem(8, 1)
If Event = #PB_Event_Menu
Select EventMenuID()
Case 1
ouvrir_fenetre_cd()
Case 2
Event = #PB_EventCloseWindow
Case 3
fenetre_aide()
Case 4
a_propos()
EndSelect
EndIf
Until Event = #PB_EventCloseWindow
End
Et que par la suite, ajouter d'autres infos, avec celles déjà présent .
PS:Si vous n'avez pas compris posser des quetions.
tu peux essayer de lire les posts ici , le sujet avait déjà été abordé
http://purebasic.hmt-forum.com/viewtopic.php?t=1609
http://purebasic.hmt-forum.com/viewtopic.php?t=1609
C'est de la base de données que tu veux traiter
alors utilise un libe de base de donnée
t'en trouvera sur
http://www.purearea.net/pb/english/userlibs.php
alors utilise un libe de base de donnée
t'en trouvera sur
http://www.purearea.net/pb/english/userlibs.php
Si j'ai bien compris c'est ça que tu veux faire
Code : Tout sélectionner
Texte.s = "Texte à stocker"
If OpenFile(0,"Fichier.txt")
FileSeek(Lof()) ; On se place à la fin du fichier.
WriteStringN(Texte) ; Avec la commande WriteStringN() on a un retour à la ligne.
CloseFile(0)
EndIf
-
- Messages : 1092
- Inscription : mer. 28/janv./2004 16:22
- Localisation : 76
- Contact :
C'est pareil. A part que le ini sert comme fichier de configuration (et non le txt). Mais tout ça c'est théorique, tu peux faire l'inverse si ça te chante. 

Heis Spiter, webmaster du site http://www.heisspiter.net
Développeur principal et administrateur du projet Bird Chat
Parti courir au bonheur du dév. public et GPL
Développeur principal et administrateur du projet Bird Chat
Parti courir au bonheur du dév. public et GPL
