Public oFrm AsForm
oFrm = Createobject("FrmGrdsCbo")
oFrm.AutoCenter = .T.
oFrm.AlwaysOnTop = .T.
oFrm.Show(1) Cd (CCURRDIR)
* ****************************************************** * * Auteur :Eddy Maue * * ----------------------------- * * Classe Nom :FrmGrdsCbo * * Classe Parent :Form * * ----------------------------- * * Créé le :04/19/06 * * Modifier le : * ****************************************************** DefineClass FrmGrdsCbo AsForm
f10 ="" Add Object Grid1 As Mygrid WithLeft = 10
* ****************************************************** * * FrmGrdsCbo :: Init * ****************************************************** * * Créé le :04/19/06 * * Modifier le : * ****************************************************** ProcedureInit MESSAGEBOX("Faites F10 pour ajouter un enregistrement",0+64) This.f10 = On("key","f10") OnKeyLabel f10 AppendBlank Thisform.Width = 20 + This.Grid1.Width SELECT ("friends") Endproc&& FrmGrdsCbo :: Init
* ****************************************************** * * FrmGrdsCbo :: Destroy * ****************************************************** * * Créé le :04/19/06 * * Modifier le : * ****************************************************** ProcedureDestroy
doit = [ON KEY LABEL F10 ]+ This.f10 Release oFrm
Endproc&& FrmGrdsCbo :: Destroy
* ****************************************************** * * FrmGrdsCbo :: Error * ****************************************************** * * Créé le :04/19/06 * * Modifier le : * ****************************************************** ProcedureError(nError, cMethod, nLine)
Endproc&& FrmGrdsCbo :: Error
Enddefine
* ****************************************************** * * Auteur :Eddy Maue * * ----------------------------- * * Classe Nom :MyGrid * * Classe Parent :Grid * * ----------------------------- * * Créé le :04/19/06 * * Modifier le : * ****************************************************** DefineClass Mygrid AsGrid Height = 200 Width = 448 RowHeight = 18 RecordSource = "Friends"
Add Object column1 As MyColTxt With ; ControlSource = "Friends.Name" ,; width = 152
Add Object column2 As MyColTxt With ; ControlSource = "Friends.Address" ,; Width = 166
Add Object column3 As MyColCbo With ; ControlSource = "Friends.State" ,; Bound = .F. ,; Width = 93
* ****************************************************** * * Column3.Combox1 * ****************************************************** ** Créé par : Eddy Maue * * Créé le : 04/19/06 * * Modifier le : * ****************************************************** Procedure column3.ComboBox1.Init WithThis
.BoundColumn = 2
.ColumnCount = 2
.ColumnWidths = "75,0"
.ControlSource = "Friends.State"
.RowSourceType = 6 && -Fields
.RowSource = "States.FullName,Abbrev"
.Style = 2 && - DropDown List Endwith Endproc&& Column3.Combox1
* ****************************************************** * * Column3.combox.gotfocus * ****************************************************** ** Créé par : Eddy Maue * * Créé le : 04/19/06 * * Modifier le : * ****************************************************** Procedure column3.ComboBox1.GotFocus If !Empty(Friends.State) This.Value = Friends.State Else This.DisplayValue = This.List(1) Endif ** This lets you see the current state value in the combo box ** or if it is a new record it displays the first state in the list.
Endproc&& Column3.combox.gotfocus
* ****************************************************** * * MyGrid :: Init * ****************************************************** * * Créé le :04/19/06 * * Modifier le : * ****************************************************** ProcedureInit
Endproc&& MyGrid :: Init
* ****************************************************** * * MyGrid :: Destroy * ****************************************************** * * Créé le :04/19/06 * * Modifier le : * ****************************************************** ProcedureDestroy
Endproc&& MyGrid :: Destroy
* ****************************************************** * * MyGrid :: Error * ****************************************************** * * Créé le :04/19/06 * * Modifier le : * ****************************************************** ProcedureError(nError, cMethod, nLine)
Endproc&& MyGrid :: Error
Enddefine
* ****************************************************** * * Auteur :Eddy Maue * * ----------------------------- * * Classe Nom :MyColCbo * * Classe Parent :MyColumn * * ----------------------------- * * Créé le :04/19/06 * * Modifier le : * ****************************************************** DefineClass MyColCbo As MyCol Add Object ComboBox1 As MyComboBox * ****************************************************** * * MyColCbo :: Init * ****************************************************** * * Créé le :04/19/06 * * Modifier le : * ****************************************************** ProcedureInit
Endproc&& MyColCbo :: Init Enddefine
* ****************************************************** * * Auteur :Eddy Maue * * ----------------------------- * * Classe Nom :MyColTxt * * Classe Parent :MyCol * * ----------------------------- * * Créé le :04/19/06 * * Modifier le : * ****************************************************** DefineClass MyColTxt As MyCol
Add Object TextBox1 As MyTextBox * ****************************************************** * * MyColTxt :: Init * ****************************************************** * * Créé le :04/19/06 * * Modifier le : * ****************************************************** ProcedureInit
Endproc&& MyColTxt :: Init Enddefine
* ****************************************************** * * Auteur :Eddy Maue * * ----------------------------- * * Classe Nom :MyCol * * Classe Parent :Custom * * ----------------------------- * * Créé le :04/19/06 * * Modifier le : * ****************************************************** DefineClass MyCol AsColumn
* ****************************************************** * * MyCol :: Init * ****************************************************** * * Créé le :04/19/06 * * Modifier le : * ****************************************************** ProcedureInit
Endproc&& MyCol :: Init
Enddefine
* ****************************************************** * * Auteur :Eddy Maue * * ----------------------------- * * Classe Nom :MyTextBox * * Classe Parent :textbox * * ----------------------------- * * Créé le :04/19/06 * * Modifier le : * ****************************************************** DefineClass MyTextBox AsTextBox
* ****************************************************** * * MyTextBox :: Init * ****************************************************** * * Créé le :04/19/06 * * Modifier le : * ****************************************************** ProcedureInit
Endproc&& MyTextBox :: Init
Enddefine
* ****************************************************** * * Auteur :Eddy Maue * * ----------------------------- * * Classe Nom :MyCombo * * Classe Parent :Custom * * ----------------------------- * * Créé le :04/19/06 * * Modifier le : * ****************************************************** DefineClass MyComboBox AsComboBox
* ****************************************************** * * MyCombo :: Init * ****************************************************** * * Créé le :04/19/06 * * Modifier le : * ****************************************************** ProcedureInit
Endproc&& MyCombo :: Init
Enddefine
* ****************************************************** * * Auteur :Eddy Maue * * ----------------------------- * * Créé le :04/19/06 * * Modifier le : * ****************************************************** Procedure CreateTable()
=UseTable("States")
=UseTable("Friends") Endproc
Procedure UseTable(cTable)
If !Used(cTable) If !File(cTable+".dbf") DoCase Case cTable=States * creer votre table ici CreateTable States (FullName C(20), Abbrev C(2)) InsertInto States Values ("Alaska","AK") InsertInto States Values ("Colorado","CO") InsertInto States Values ("Florida","FL") InsertInto States Values ("Idaho","ID") InsertInto States Values ("Maine","ME") InsertInto States Values ("Ohio","OH") InsertInto States Values ("Texas","TX") *-------------------------------- Case cTable=Friends * creer votre table ici CreateTable Friends (Name C(40), Address C(30), State C(2))
*-------------------------------- Endcase Else Use (cTables) In 0 Endif Endif
ReturnSelect(cTable)
Endproc
Commentaires
le 27/05/2014, Saline_108 a écrit : génial, est ce que possible de faire la recherche dans la grille en tapant le un nom il me propose une liste correspond au premier nom ecrit.
génial, est ce que possible de faire la recherche dans la grille
en tapant le un nom il me propose une liste correspond au premier nom ecrit.
je crois qu'on aura besoin d'un autre grille.