Gadget tchat

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
SPH
Messages : 4947
Inscription : mer. 09/nov./2005 9:53

Gadget tchat

Message par SPH »

J'ai un zero pointé en gadget mais j'ai un projet où il va falloir que j'en utilise. J'ai donc une question :
existe t'il un moyen pour valider avec ENTREE un gadget qui imite un tchat ?

Hooo, je m'exprime mal mais j'espere que vous m'avez compris...

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
lepiaf31
Messages : 510
Inscription : dim. 25/mars/2007 13:44
Localisation : Toulouse, France
Contact :

Re: Gadget tchat

Message par lepiaf31 »

+ StringGadget()
+ AddKeyboardShortcut() pour récupérer l'appui sur la touche entrée
+ GetActiveGadget() pour vérifier si le stringGadget à bien le "focus"
Avatar de l’utilisateur
SPH
Messages : 4947
Inscription : mer. 09/nov./2005 9:53

Re: Gadget tchat

Message par SPH »

ok c'est noté.

Et je sais que j'etais confronté a un autre probleme : afficher les 10 derniers messages du tchat. Pour cela, il fallait aligner vers le bas le string. Est-ce possible ?

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
lepiaf31
Messages : 510
Inscription : dim. 25/mars/2007 13:44
Localisation : Toulouse, France
Contact :

Re: Gadget tchat

Message par lepiaf31 »

SPH a écrit : Et je sais que j'etais confronté a un autre probleme : afficher les 10 derniers messages du tchat. Pour cela, il fallait aligner vers le bas le string. Est-ce possible ?
Le plus simple ca reste un EditorGadget() avec l'option ReadOnly et tu le rafraichit complètement à chaque nouveau message ajouté.
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Gadget tchat

Message par Ar-S »

Tout à fait.
Tu stockes tes tchat dans une Liste Chainée puis tu affiches la liste dans l'ordre que tu souhaites.
J'avais fait un petit tchat (via ftp) qui marchait bien. Je regarderai si je trouve le code.

-----edit------
Pas retrouvé mais voilà un truc du genre tchat. Sans liste, juste avec une variable.s.

Code : Tout sélectionner

;{- Enumerations / DataSections
;{ Windows
Enumeration
  #Window_0
  #EDITOR : #message : #go
EndEnumeration


  If OpenWindow(#Window_0, 450, 300, 280, 150, "Window_0", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
    EditorGadget(#EDITOR, 5, 10, 270, 70,#PB_Editor_ReadOnly)
    SetGadgetText(#EDITOR,"Le fonctionnement d'un tchat ressemble à ça non ?")
    SendMessage_(GadgetID(#EDITOR), #EM_SETTARGETDEVICE, #Null, 0) ; retour auto
    StringGadget(#message,5,90,250,20,"Tape ton textre ici puis clic sur le bouton",#PB_String_BorderLess)
    ButtonGadget(#go,5,120,50,20,"envoyer")
    ; Gadget Colors
    SetGadgetColor(#EDITOR, #PB_Gadget_BackColor, $0)
    SetGadgetColor(#EDITOR, #PB_Gadget_FrontColor, #green)
    
    ;{- Event loop
    Repeat
      Select WaitWindowEvent()
          
        Case #PB_Event_Gadget
          Select EventGadget()
            Case #go
              Message$=Space(5)+GetGadgetText(#message)
              EditorMessage$=Space(5)+GetGadgetText(#EDITOR)
              MessageTotal$=Chr(10)+Message$+Chr(10)+EditorMessage$
              SetGadgetText(#EDITOR,MessageTotal$)
              SetGadgetText(#message,"")
          EndSelect
          
        Case #PB_Event_CloseWindow
          Select EventWindow()
            Case #Window_0
              CloseWindow(#Window_0)
              Break
          EndSelect
      EndSelect
    ForEver
    
    
  EndIf
  

~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Répondre