Sinon, ajouter un stringgadget est facile mais garder le texte déjà entré dans la grille sera plus compliqué, il te faudra un tableau de string.
Code : Tout sélectionner
Enumeration
  #Fenetre_Saya
  #string
  
  #Label_igne_01
  #Label_igne_02
  #Label_igne_03
  #Label_igne_04
  #Label_igne_05
  #Label_igne_06
  #Label_igne_07
  #Label_igne_08
  #Label_igne_09
  #Label_igne_10
  
  #Label_igne_11
  #Label_igne_12
  #Label_igne_13
  #Label_igne_14
  #Label_igne_15
  #Label_igne_16
  #Label_igne_17
  #Label_igne_18
  #Label_igne_19
  #Label_igne_20
  #Label_igne_21
  #Label_igne_22
  #Label_igne_23
  #Label_igne_24
  #Label_igne_25
  
  #Label_Colonne_01
  #Label_Colonne_02
  #Label_Colonne_03
  #Label_Colonne_04
  #Label_Colonne_05
  #Label_Colonne_06
  #Label_Colonne_07
  #Label_Colonne_08
  #Label_Colonne_09
  #Label_Colonne_10
  
  #Select_All
  
  #ScrollBar
  
  #Menu_SQlite3_Nouvelle_BDD
  #Menu_SQlite3_Ouvrir_BDD
  #Menu_SQlite3_Nouvelle_Fiche_BDD
  #Menu_SQlite3_MAJ_BDD
  #Menu_SQlite3_Quitter
  
  #Menu_Edition_Couper
  #Menu_Edition_Copier
  #Menu_Edition_Coller
  #Menu_Edition_Import_Blob
  
  #Menu_Rechercher
  #Menu_Rechercher_Suivant
  
  #Menu_Aide
  #Menu_A_Propos
  
  #ID_Bouton_close_a_propos
  
  ;==========================================
  #Image_Nouvelle
  #Image_Open
  #Image_Nouvelle_Fiche
  #Image_MAJ_BDD
  #Image_Quitter
  
  #Image_Couper
  #Image_Copier
  #Image_Coller
  #Image_Import_Blob
  
  #Image_Rechercher
  #Image_Rechercher_Suivant
  
  #Image_Aide
  #Image_A_Propos
  ;==========================================
  
  #Fenetre_a_propos
  #TextAPropos1
  #TextAPropos2
  #TextAPropos3
  #TextAPropos4
  
  #Select_Key_Cellule
  #Font_Saya  
  
  #Entree_Cellule
EndEnumeration
;=========================== Largeur des Colonne ===========================
Global.i Largeur_Colonne_01 = 180
Global.i Largeur_Colonne_02 = 180
Global.i Largeur_Colonne_03 = 180
Global.i Largeur_Colonne_04 = 180
Global.i Largeur_Colonne_05 = 180
Global.i Largeur_Colonne_06 = 180
Global.i Largeur_Colonne_07 = 180
Global.i Largeur_Colonne_08 = 180
Global.i Largeur_Colonne_09 = 180
Global.i Largeur_Colonne_10 = 180
;===========================================================================
Global.i glEvent, glGadget, glType, Quitter = 0
Global Separateur.s
Global IndexSeparateur.i
Global.i SourisX,SourisY,SourisX_Save,SourisY_Save
;Global Separateur.s = "\" ;Windows
Global Separateur.s = "/" ;Linux
UseOGGSoundDecoder()  ; Utilisation des fichiers Ogg
UseFLACSoundDecoder() ; Utilisation des fichiers Flac
UseJPEG2000ImageDecoder()
UseJPEG2000ImageEncoder()
UseJPEGImageDecoder()
UseJPEGImageEncoder()
UsePNGImageDecoder()
UsePNGImageEncoder()
UseTIFFImageDecoder()
UseTGAImageDecoder()
UseGIFImageDecoder()
InitMouse()
Procedure PosClic(MouseX.i,MouseY.i, x0.i,y0.i,x1.i,y1.i)  
  If MouseX >= x0 And MouseX <= x1 And MouseY >= y0 And MouseY <= y1
    ProcedureReturn #True
  Else
    ProcedureReturn #False
  EndIf
EndProcedure
Procedure PosClicFac(MouseX.i,MouseY.i, x0.i,y0.i,x1.i,y1.i)     
  If MouseX >= x0 And MouseX <= x0+x1 And MouseY >= y0 And MouseY <= y0+y1
    ProcedureReturn #True
  Else
    ProcedureReturn #False
  EndIf  
EndProcedure
Procedure PosClicCercle(MouseX.i,MouseY.i,x.i,y.i,Radius.i)      
  
  If MouseX >= x And MouseX <= x*Radius And MouseX >= x And MouseX <= x/Radius And      
     MouseY >= y And MouseY <= y*Radius And MouseY >= y And MouseY <= y/Radius 
    
    ProcedureReturn #True
  Else
    ProcedureReturn #False
  EndIf  
  
EndProcedure
Procedure PixCadreColor(X1.i,Y1.i,X2.i,Y2.i,Color.i)
  LineXY(X1,Y1,X2,Y1,Color)    
  LineXY(X1,Y1,X1,Y2,Color)  
  LineXY(X2,Y1,X2,Y2,Color)  
  LineXY(X1,Y2,X2,Y2,Color)       
EndProcedure
Procedure CadreCel(X1.i,Y1.i,FacX.i,FacY.i,Color.i)
  LineXY(X1,Y1,X1+FacX,Y1,Color) ;Ligne Horizontale Haut 1
  LineXY(X1,Y1,X1,Y1+FacY,Color) ;Ligne Verticale Gauche 1
  
  LineXY(X1,Y1+1,X1+FacX,Y1+1,Color) ;Ligne Horizontale Haut 2
  LineXY(X1+1,Y1,X1+1,Y1+FacY,Color) ;Ligne Verticale Gauche 2
  
  
  LineXY(X1+FacX-1,Y1,X1+FacX-1,Y1+FacY,Color) ;Ligne Verticale Droite 1
  LineXY(X1,Y1+FacY-1,X1+FacX,Y1+FacY-1,Color) ;Ligne Horizontale Bas 1
  
  LineXY(X1+FacX,Y1,X1+FacX,Y1+FacY,Color) ;Ligne Verticale Droite 2 
  LineXY(X1,Y1+FacY,X1+FacX,Y1+FacY,Color) ;Ligne Horizontale Bas 1
  
  ResizeGadget(#string,X1,Y1,FacX,FacY)
;   HideGadget(#string,#False)
  SetActiveGadget(#string)
EndProcedure
Procedure TextCadre(X1.i,Y1.i,Texte.s,Color.i)
  Protected X2.i,Y2.i  
  
  X1 = X1 - 20  
  Y1 = Y1 + 17
  
  X2 = X1+100
  Y2 = Y1+25
  
  ;LineXY(X1,Y1,X2,Y1,#Black)    
  ;LineXY(X1,Y1,X1,Y2,#Black)  
  ;LineXY(X2,Y1,X2,Y2,#Black)  
  ;LineXY(X1,Y2,X2,Y2,#Black)       
  DrawingMode(#PB_2DDrawing_Transparent)
  DrawText(X1-40,Y2-45,Texte,Color,#PB_2DDrawing_Transparent)
  
EndProcedure
;============================================================================================================================================================
Procedure Labels_Ligne_Grid(X.i,                                                   
                            Y.i,                     
                            Largeur_Colonne_01.i,
                            Largeur_Colonne_02.i,
                            Largeur_Colonne_03.i,
                            Largeur_Colonne_04.i,
                            Largeur_Colonne_05.i,
                            Largeur_Colonne_06.i,
                            Largeur_Colonne_07.i,
                            Largeur_Colonne_08.i,
                            Largeur_Colonne_09.i,
                            Largeur_Colonne_10.i,                     
                            Hauteur_Cellule.i,
                            Titre_Colone_01.s,
                            Titre_Colone_02.s,
                            Titre_Colone_03.s,
                            Titre_Colone_04.s,
                            Titre_Colone_05.s,
                            Titre_Colone_06.s,
                            Titre_Colone_07.s,
                            Titre_Colone_08.s,
                            Titre_Colone_09.s,
                            Titre_Colone_10.s)
  
  ButtonGadget(#Label_Colonne_01,X,l+Y, Largeur_Colonne_01,Hauteur_Cellule,Titre_Colone_01,#PB_Button_Toggle)
  ButtonGadget(#Label_Colonne_02,X+Largeur_Colonne_01,l+Y_Cellule,Largeur_Colonne_02,Hauteur_Cellule,Titre_Colone_02,#PB_Button_Toggle)
  ButtonGadget(#Label_Colonne_03,X+Largeur_Colonne_01+Largeur_Colonne_02,l+Y,Largeur_Colonne_03,Hauteur_Cellule,Titre_Colone_03,#PB_Button_Toggle)
  ButtonGadget(#Label_Colonne_04,X+Largeur_Colonne_01+Largeur_Colonne_02+Largeur_Colonne_03,l+Y,Largeur_Colonne_04,Hauteur_Cellule,Titre_Colone_04,#PB_Button_Toggle)
  ButtonGadget(#Label_Colonne_05,X+Largeur_Colonne_01+Largeur_Colonne_02+Largeur_Colonne_03+Largeur_Colonne_04,l+Y_Cellule,Largeur_Colonne_05,Hauteur_Cellule,Titre_Colone_05,#PB_Button_Toggle)
  ButtonGadget(#Label_Colonne_06,X+Largeur_Colonne_01+Largeur_Colonne_02+Largeur_Colonne_03+Largeur_Colonne_04+Largeur_Colonne_05,l+Y_Cellule,Largeur_Colonne_06,Hauteur_Cellule,Titre_Colone_06,#PB_Button_Toggle)
  ButtonGadget(#Label_Colonne_07,X+Largeur_Colonne_01+Largeur_Colonne_02+Largeur_Colonne_03+Largeur_Colonne_04+Largeur_Colonne_05+Largeur_Colonne_06,l+Y_Cellule,Largeur_Colonne_07,Hauteur_Cellule,Titre_Colone_07,#PB_Button_Toggle)
  ButtonGadget(#Label_Colonne_08,X+Largeur_Colonne_01+Largeur_Colonne_02+Largeur_Colonne_03+Largeur_Colonne_04+Largeur_Colonne_05+Largeur_Colonne_06+Largeur_Colonne_07,l+Y,Largeur_Colonne_08,Hauteur_Cellule,Titre_Colone_08,#PB_Button_Toggle)
  ButtonGadget(#Label_Colonne_09,X+Largeur_Colonne_01+Largeur_Colonne_02+Largeur_Colonne_03+Largeur_Colonne_04+Largeur_Colonne_05+Largeur_Colonne_06+Largeur_Colonne_07+Largeur_Colonne_08,l+Y,Largeur_Colonne_09,Hauteur_Cellule,Titre_Colone_09,#PB_Button_Toggle)
  ButtonGadget(#Label_Colonne_10,X+Largeur_Colonne_01+Largeur_Colonne_02+Largeur_Colonne_03+Largeur_Colonne_04+Largeur_Colonne_05+Largeur_Colonne_06+Largeur_Colonne_07+Largeur_Colonne_08+Largeur_Colonne_09,l+Y,Largeur_Colonne_10,Hauteur_Cellule,Titre_Colone_10,#PB_Button_Toggle)
EndProcedure
Procedure Affiche_Numeros(index.i)
  Protected.i num
  index = index -1  
  
  SetGadgetText(#Label_igne_01,Str(Index+1))
  SetGadgetText(#Label_igne_02,Str(Index+2))
  SetGadgetText(#Label_igne_03,Str(Index+3))
  SetGadgetText(#Label_igne_04,Str(Index+4))
  SetGadgetText(#Label_igne_05,Str(Index+5))
  SetGadgetText(#Label_igne_06,Str(Index+6))
  SetGadgetText(#Label_igne_07,Str(Index+7))
  SetGadgetText(#Label_igne_08,Str(Index+8))
  SetGadgetText(#Label_igne_09,Str(Index+9))
  SetGadgetText(#Label_igne_10,Str(Index+10))  
  
  SetGadgetText(#Label_igne_11,Str(Index+11))
  SetGadgetText(#Label_igne_12,Str(Index+12))
  SetGadgetText(#Label_igne_13,Str(Index+13))
  SetGadgetText(#Label_igne_14,Str(Index+14))
  SetGadgetText(#Label_igne_15,Str(Index+15))
  SetGadgetText(#Label_igne_16,Str(Index+16))
  SetGadgetText(#Label_igne_17,Str(Index+17))
  SetGadgetText(#Label_igne_18,Str(Index+18))
  SetGadgetText(#Label_igne_19,Str(Index+19))
  SetGadgetText(#Label_igne_20,Str(Index+20))
  
  SetGadgetText(#Label_igne_21,Str(Index+21))
  SetGadgetText(#Label_igne_22,Str(Index+22))
  SetGadgetText(#Label_igne_23,Str(Index+23))
  SetGadgetText(#Label_igne_24,Str(Index+24))
  SetGadgetText(#Label_igne_25,Str(Index+25))
  
EndProcedure
Procedure Grid()  
  Protected.i Largeur_Label = 60
  Protected.i Hauteur_Cellule = 20
  Protected.i j = 0   
  Protected.i X = 0
  Protected.i Y = 0    
  
  Protected.i Largeur_Colonne_01 = 180
  Protected.i Largeur_Colonne_02 = 180
  Protected.i Largeur_Colonne_03 = 180
  Protected.i Largeur_Colonne_04 = 180
  Protected.i Largeur_Colonne_05 = 180
  Protected.i Largeur_Colonne_06 = 180
  Protected.i Largeur_Colonne_07 = 180
  Protected.i Largeur_Colonne_08 = 180
  Protected.i Largeur_Colonne_09 = 180
  Protected.i Largeur_Colonne_10 = 180
  
  ButtonGadget(#Select_All,0,0,60,50,"",#PB_Button_Toggle)
  
  Labels_Ligne_Grid(X+Largeur_Label,                             
                    Y,                     
                    Largeur_Colonne_01,
                    Largeur_Colonne_02,
                    Largeur_Colonne_03,
                    Largeur_Colonne_04,
                    Largeur_Colonne_05,
                    Largeur_Colonne_06,
                    Largeur_Colonne_07,
                    Largeur_Colonne_08,
                    Largeur_Colonne_09,
                    Largeur_Colonne_10,                     
                    Hauteur_Cellule,
                    "Prenom",
                    "Nom",
                    "Enteprise",
                    "Adresse",
                    "Code postal",
                    "Ville",
                    "Pays",
                    "Téléphone",
                    "E-Mail",
                    "Site")
  
  ;=========== Labels de la colonne 0 ===========
  ButtonGadget(#Label_igne_01, X,Y+33 ,Largeur_Label,20,Str(ligne_01),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_02, X,Y+66 ,Largeur_Label,20,Str(ligne_02),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_03, X,Y+99 ,Largeur_Label,20,Str(ligne_03),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_04, X,Y+132,Largeur_Label,20,Str(ligne_04),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_05, X,Y+165,Largeur_Label,20,Str(ligne_05),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_06, X,Y+198,Largeur_Label,20,Str(ligne_06),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_07, X,Y+231,Largeur_Label,20,Str(ligne_07),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_08, X,Y+264,Largeur_Label,20,Str(ligne_08),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_09, X,Y+297,Largeur_Label,20,Str(ligne_09),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_10, X,Y+330,Largeur_Label,20,Str(ligne_10),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_11, X,Y+363,Largeur_Label,20,Str(ligne_11),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_12, X,Y+396,Largeur_Label,20,Str(ligne_12),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_13, X,Y+429,Largeur_Label,20,Str(ligne_13),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_14, X,Y+462,Largeur_Label,20,Str(ligne_14),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_15, X,Y+495,Largeur_Label,20,Str(ligne_15),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_16, X,Y+528,Largeur_Label,20,Str(ligne_16),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_17, X,Y+561,Largeur_Label,20,Str(ligne_17),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_18, X,Y+594,Largeur_Label,20,Str(ligne_18),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_19, X,Y+627,Largeur_Label,20,Str(ligne_19),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_20, X,Y+660,Largeur_Label,20,Str(ligne_20),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_21, X,Y+693,Largeur_Label,20,Str(ligne_21),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_22, X,Y+726,Largeur_Label,20,Str(ligne_22),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_23, X,Y+759,Largeur_Label,20,Str(ligne_23),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_24, X,Y+792,Largeur_Label,20,Str(ligne_24),#PB_Button_Toggle)
  ButtonGadget(#Label_igne_25, X,Y+825,Largeur_Label,20,Str(ligne_25),#PB_Button_Toggle)
  
  ;=========== Nombres de Lignes 
  If StartDrawing(CanvasOutput(#Fenetre_Saya))      
    
    BackColor(RGB(255,255,255)) 
    FrontColor(RGB(0, 0, 0))
    
    Box(0,0,1867,900,RGB(255,255,255))  
    
    For x = 60 To 1880 Step 180
      LineXY(x,0,x,860)
    Next  
    
    For y = 33 To 900 Step 33
      LineXY(60,y,1860,y)
    Next
    
    StopDrawing()
  EndIf
  
EndProcedure
Procedure Menu()
  If LoadImage(#Image_Nouvelle,"Icons/Flou.png")  
    ResizeImage(#Image_Nouvelle,16,16)    
  EndIf
  
  If LoadImage(#Image_Open,"Icons/Open.png")  
    ResizeImage(#Image_Open,16,16)    
  EndIf
  
  If LoadImage(#Image_Nouvelle_Fiche,"Icons/Flou.png")  
    ResizeImage(#Image_Nouvelle_Fiche,16,16)    
  EndIf
  
  If LoadImage(#Image_MAJ_BDD,"Icons/Pal.png")  
    ResizeImage(#Image_MAJ_BDD,16,16)    
  EndIf
  
  If LoadImage(#Image_Quitter,"Icons/Flou_Gris.png")  
    ResizeImage(#Image_Quitter,16,16)    
  EndIf
  
  ;=============================================================================================
  
  If LoadImage(#Image_Couper,"Icons/Open_Blob.png")  
    ResizeImage(#Image_Couper,16,16)    
  EndIf
  
  If LoadImage(#Image_Copier,"Icons/Open_Blob.png")  
    ResizeImage(#Image_Copier,16,16)    
  EndIf
  
  If LoadImage(#Image_Coller,"Icons/Open_Blob.png")  
    ResizeImage(#Image_Coller,16,16)    
  EndIf
  
  If LoadImage(#Image_Import_Blob,"Icons/Open_Blob.png")  
    ResizeImage(#Image_Import_Blob,16,16)    
  EndIf
  
  ;=============================================================================================
  
  If LoadImage(#Image_Rechercher,"Icons/Open_Blob.png")  
    ResizeImage(#Image_Rechercher,16,16)    
  EndIf
  
  If LoadImage(#Image_Rechercher_Suivant,"Icons/Open_Blob.png")  
    ResizeImage(#Image_Rechercher_Suivant,16,16)    
  EndIf
  ;=============================================================================================
  
  If LoadImage(#Image_Aide,"Icons/Open_Blob.png")  
    ResizeImage(#Image_Aide,16,16)    
  EndIf
  
  If LoadImage(#Image_A_Propos,"Icons/A_Propos.png")  
    ResizeImage(#Image_A_Propos,16,16)    
  EndIf
  
  ;=============================================================================================
  
  If CreateImageMenu(#Fenetre_Saya,WindowID(#Fenetre_Saya), #PB_Menu_ModernLook) 
    MenuTitle("SQlite3")
    MenuItem(#Menu_SQlite3_Nouvelle_BDD,"Nouvelle BDD"+Chr(9)+"Ctrl+N",ImageID(#Image_Nouvelle))
    MenuItem(#Menu_SQlite3_Ouvrir_BDD,"Ouvrir"+Chr(9)+"Ctrl+O",ImageID(#Image_Open))      
    MenuItem(#Menu_SQlite3_Nouvelle_Fiche_BDD,"Nouvelle fiche BDD"+Chr(9)+"Ctrl+F",ImageID(#Image_Nouvelle_Fiche))
    MenuItem(#Menu_SQlite3_MAJ_BDD,"Mise a jour d'une BDD"+Chr(9)+"Ctrl+M",ImageID(#Image_MAJ_BDD))
    MenuBar()  ;la barre de séparation sera insérée ici
    MenuItem(#Menu_SQlite3_Quitter,"Quitter Saya"+Chr(9)+"Ctrl+Q",ImageID(#Image_Quitter))      
    ;===============================================================================================
    MenuTitle("Edition")
    MenuItem(#Menu_Edition_Couper,"Couper"+Chr(9)+"Ctrl+X",ImageID(#Image_Couper))      
    MenuItem(#Menu_Edition_Copier,"Copier"+Chr(9)+"Ctrl+C",ImageID(#Image_Copier))      
    MenuItem(#Menu_Edition_Coller,"Coller"+Chr(9)+"Ctrl+V",ImageID(#Image_Coller))            
    MenuBar()  ;la barre de séparation sera insérée ici
    MenuItem(#Menu_Edition_Import_Blob,"Importer une image blob ..."+Chr(9)+"Ctrl+I",ImageID(#Image_Import_Blob))
    ;===============================================================================================
    MenuTitle("Rechercher")
    MenuItem(#Menu_Rechercher,"Couper"+Chr(9)+"Ctrl+R",ImageID(#Image_Rechercher))      
    MenuItem(#Menu_Rechercher_Suivant,"Copier"+Chr(9)+"F3",ImageID(#Image_Rechercher_Suivant))      
    ;===============================================================================================
    MenuTitle("Aide")
    MenuItem(#Menu_Aide,"Ade"+Chr(9)+"F1",ImageID(#Image_Aide))      
    MenuItem(#Menu_A_Propos,"A Propos"+Chr(9)+"Ctrl+A",ImageID(#Image_A_Propos))      
    ;===============================================================================================
    
  EndIf
  
EndProcedure
;==============================================================================================================
Procedure Fenetre_Saya()
  Protected.i ajuste_bar_linux = 60
  Protected.i taille_linux = 47
  
  If OpenWindow(#Fenetre_Saya, 0,0,1874,910, "Notysoft Saya - Gestion de Contacts - 2016 - 2021",  #PB_Window_SystemMenu | #PB_Window_TitleBar | #PB_Window_ScreenCentered )              
    CanvasGadget(#Fenetre_Saya,0,0,1874,859, #PB_Canvas_Container)
    StringGadget(#string,0,0,0,0,"")
;     HideGadget(#string,#True)
    
    Menu()
    Grid()     
    
    ScrollBarGadget(#ScrollBar, 1861, 1, 12, 860 ,0, 1450, 50, #PB_ScrollBar_Vertical) 
    
    AddKeyboardShortcut(#Fenetre_Saya,#PB_Shortcut_Return,#Select_Key_Cellule)
    
    ;StringGadget(#Entree_Cellule,62,35,177,30,"",#PB_String_BorderLess)
    
    ;Debug GetGadgetState(#ScrollBar)  
    
  EndIf
  
EndProcedure
Procedure Main()
  Repeat         
    
    If StartDrawing(CanvasOutput(#Fenetre_Saya))                  
      BackColor(RGB(255,255,255)) 
      FrontColor(RGB(0, 0, 0))
      
      If GetGadgetState(#ScrollBar) < 35      
        Affiche_Numeros(1)
      EndIf
      
      ;========================================================
      
      If GetGadgetState(#ScrollBar) > 70      
        Affiche_Numeros(26)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 105
        Affiche_Numeros(51)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 140     
        Affiche_Numeros(76)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 175      
        Affiche_Numeros(101)
      EndIf
      
      ;========================================================
      If GetGadgetState(#ScrollBar) > 210      
        Affiche_Numeros(126)
      EndIf        
      
      If GetGadgetState(#ScrollBar) > 245
        Affiche_Numeros(151)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 280
        Affiche_Numeros(176)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 315      
        Affiche_Numeros(201)
      EndIf
      
      ;========================================================
      
      If GetGadgetState(#ScrollBar) > 350  
        Affiche_Numeros(226)
      EndIf        
      
      If GetGadgetState(#ScrollBar) > 385
        Affiche_Numeros(251)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 420
        Affiche_Numeros(276)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 455      
        Affiche_Numeros(301)
      EndIf
      
      ;========================================================
      
      If GetGadgetState(#ScrollBar) > 490      
        Affiche_Numeros(326)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 525      
        Affiche_Numeros(351)
      EndIf        
      
      If GetGadgetState(#ScrollBar) > 560      
        Affiche_Numeros(376)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 595
        Affiche_Numeros(401)
      EndIf
      
      ;========================================================
      
      If GetGadgetState(#ScrollBar) > 630      
        Affiche_Numeros(426)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 665      
        Affiche_Numeros(451)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 700
        Affiche_Numeros(476)
      EndIf        
      
      If GetGadgetState(#ScrollBar) > 735
        Affiche_Numeros(501)
      EndIf
      
      ;========================================================
      
      If GetGadgetState(#ScrollBar) > 770
        Affiche_Numeros(526)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 805      
        Affiche_Numeros(551)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 840      
        Affiche_Numeros(576)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 875      
        Affiche_Numeros(601)
      EndIf
      
      ;========================================================
      
      If GetGadgetState(#ScrollBar) > 910
        Affiche_Numeros(626)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 945      
        Affiche_Numeros(651)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 980      
        Affiche_Numeros(676)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 1015      
        Affiche_Numeros(601)
      EndIf
      
      ;========================================================
      
      If GetGadgetState(#ScrollBar) > 1050
        Affiche_Numeros(726)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 1085      
        Affiche_Numeros(751)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 1120     
        Affiche_Numeros(776)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 1155      
        Affiche_Numeros(801)
      EndIf
      
      ;========================================================
      
      If GetGadgetState(#ScrollBar) > 1190
        Affiche_Numeros(826)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 1225      
        Affiche_Numeros(851)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 1260     
        Affiche_Numeros(876)
      EndIf        
      
      ;========================================================
      
      If GetGadgetState(#ScrollBar) > 1295
        Affiche_Numeros(901)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 1330
        Affiche_Numeros(926)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 1365      
        Affiche_Numeros(951)
      EndIf
      
      If GetGadgetState(#ScrollBar) > 1400    
        Affiche_Numeros(976)
      EndIf        
      
      ;========================================================
      
      StopDrawing()
    EndIf    
    
    
    Select WaitWindowEvent()
        
        ;Case  #PB_EventType_MouseWheel
        ;  MessageRequester("",Str(#PB_Canvas_WheelDelta))      
        
      Case #PB_Event_Gadget    
        Select EventGadget()                   
            
          Case #Fenetre_Saya          
            
            SourisX = GetGadgetAttribute(#Fenetre_Saya, #PB_Canvas_MouseX)
            SourisY = GetGadgetAttribute(#Fenetre_Saya, #PB_Canvas_MouseY)            
            
          Case #string
            Select EventType()
              Case #PB_EventType_Change
                Debug GetGadgetText(#string)
            EndSelect
            
                
        EndSelect
        
        Select EventType()
          Case #PB_EventType_MouseMove                
            
            LoadFont(#Font_Saya, "Arial", 14)
            
            If StartDrawing(CanvasOutput(#Fenetre_Saya))      
              DrawingFont(FontID(#Font_Saya))
              BackColor(RGB(255,255,255)) 
              FrontColor(RGB(0, 0, 0))
              SourisX_Save = SourisX
              SourisY_Save = SourisY
              DrawText(70,40,""+SourisX_Save+" "+SourisY_Save) 
              StopDrawing()            
            EndIf            
            
          Case #PB_EventType_LeftButtonDown
            
            For j = 0 To 1867 Step 180      
              For i = 0 To 800 Step 33             
                
                If PosClicFac(SourisX,SourisY,60+j,34+i,180,33)            
                  If StartDrawing(CanvasOutput(#Fenetre_Saya))      
                    BackColor(RGB(255,255,255)) 
                    FrontColor(RGB(0, 0, 0))
                    
                    Box(0,0,1867,900,RGB(255,255,255))  
                    For x = 60 To 1880 Step 180
                      LineXY(x,0,x,860)
                    Next  
                    
                    For y = 33 To 900 Step 33
                      LineXY(60,y,1860,y)
                    Next      
                    
                    CadreCel(60+j,34+i,179,31,#Black)
                    
                    StopDrawing()            
                  EndIf 
                EndIf 
              Next  
            Next      
            
          Case #PB_EventType_RightButtonDown          
            
            If PosClicFac(SourisX,SourisY,70,30,1874,910) 
              If StartDrawing(CanvasOutput(#Fenetre_Saya))           
                BackColor(RGB(255,255,255)) 
                FrontColor(RGB(0, 0, 0))
                Box(0,0,1867,900,RGB(255,255,255))  
                For x = 60 To 1880 Step 180
                  LineXY(x,0,x,860)
                Next  
                
                For y = 33 To 900 Step 33
                  LineXY(60,y,1860,y)
                Next      
                StopDrawing()
              EndIf 
            EndIf                
            
        EndSelect            
        
      Case #PB_Event_Menu      ; Un élément du menu a été sélectionné
        Select EventMenu()     ; On recupère le numéro de cet élement...
                               ;Case #Menu_SQlite3_Ouvrir_BDD = 1002
                               ;Case #Menu_SQlite3_Nouvelle_Fiche_BDD = 1003
                               ;Case #Menu_SQlite3_MAJ_BDD = 1004                
          Case #Menu_SQlite3_Quitter : End
          Case #Menu_A_Propos : MessageRequester("A Propos",#CRLF$+"Notysoft Saya - 2019 - 2021 - v1.00"+#CRLF$+"Gestionnaire de contacts SQLite3.")                
            
            Case #Select_Key_Cellule
                StringGadget(#Entree_Cellule,62,35,177,30,"",#PB_String_BorderLess)
            ;CadreCel(60+j,34+i,179,31,#Black)
            ;MessageRequester("Position de la souris","Je suis la touche entrée en ("+SourisX_Save+":"+SourisY_Save+")")
            
        EndSelect          
        
      Case #PB_Event_CloseWindow
        Select EventWindow()             
          Case #Fenetre_Saya : End
        EndSelect
        
    EndSelect          
  Until Event = #PB_Event_CloseWindow  
EndProcedure
Fenetre_Saya()
Main()
M.