Click here to Skip to main content
15,884,472 members
Articles / Desktop Programming / Windows Forms

Edit Flex Grid with Combo Box in VB 6

Rate me:
Please Sign up or sign in to vote.
4.15/5 (18 votes)
29 Jan 2009CPOL2 min read 269.3K   10.8K   35   50
Using new ActiveX to edit Microsoft Flex grid with Combo box in VB 6
Screenshot - Imag5.jpg
Form1: Main form

Screenshot - Imag6.jpg

Form2: English language

Screenshot - Imag7.jpg

Form3: Arabic language

Introduction

With beautiful VB6, I have some trials to edit something like invoice, I found Data grid not familiar to edit tables, also Flex grid has no method to edit. Now I create my ActiveX control using (MSFlexGrid) control, a hidden text box and a hidden combo box. I give the name (VB6Flexgrid) to my ActiveX. I create a project (prjFlexGrid) to test my control. I write the code under Visual Basic 6. With my ActiveX control, you can:

  • Edit any cell in flex grid
  • Delete any row
  • Delete all rows and begin with one row
  • Add combo box to any column and use more than one
  • Write data to any cell
  • Read data from any cell
  • Read all data from the grid

Background

When using my ActiveX control (VB6Flexgrid), the flex grid begins with one row as Data grid control, then increases rows one by one after editing the previous row. My ActiveX control has some methods and some properties:

Method/Property

Definition

Example

ColWidth(anyCol)Set column width in (Twip)VB6Flexgrid1.ColWidth(1) = 1500
TextMatrix(anyRow, anyCol)Get or set string for the cell (row, col)VB6Flexgrid1.TextMatrix(3, 2) = “VB6”
CellType anyCol, BLet Column include combo box if B = TrueVB6Flexgrid1.CellType 3, True
ComboClear anyColClear combo boxVB6Flexgrid1.ComboClear 3
ComboAddItem anyCol, anyStringAdd item to combo boxVB6Flexgrid1.ComboAddItem 3, “Visual Studio”
DelRowDelete current rowVB6Flexgrid1.DelRow
DelAllClear the gridVB6Flexgrid1.DelAll

To use my ActiveX (VB6Flexgrid), you must add the file VB6Flexgrid.ocx and MicrosoftFlexGrid control to ‘ToolBox’ as follows:

  • Click ‘ToolBox’, then choose Components.
  • From Components dialog, choose Microsoft FlexGrid Control 6.0.
  • Click ‘Browse’ then choose ‘VB6FlexGrid.ocx’ ActiveX control from where you had saved, then click ‘OK’.

Using the Code

About columns:

VB.NET
' Set number of columns:
VB6Flexgrid1.FixedCols = 0 ' if you do not need fixed columns 
VB6Flexgrid1.Cols = 5 ' number of columns
' Set width of column:
VB6Flexgrid1.ColWidth(1) = 1500 ' width in Twip
' Set alignment of column (You can change many using loop)
VB6Flexgrid1.ColAlignmentHeader(1) = flexAlignCenterCenter 
				' alignment of fixed row, column #1 (to Center)
VB6Flexgrid1.ColAlignment(1) = flexAlignLeftCenter ' alignment column #1 (to Left)

About combo box:

VB.NET
' Set combo box at any column:
VB6Flexgrid1.CellType 3, True  ' combo box at column #3
VB6Flexgrid1.ComboClear 3 ' clear this combo
VB6Flexgrid1.ComboAddItem 3, „Visual Studio" ' add item to this combo

About cell:

VB.NET
' Send data to any cell:
VB6Flexgrid1.TextMatrix(2, 3) = „VB6"
' Read any cell:
Dim strCell As String
strCell = VB6Flexgrid1. TextMatrix(3, 2)

You can go back to source files of the project (prjFlexGrid) to read more than the previous examples.

Remarks

When extracting the file VBFlexGrid.zip, you can find the file: ..\VBFlexGrid\ActiveXcontrol\VB6Flexgrid.ocx, find the project to test the ActiveX control in the folder: ..\ VBFlexGrid.

This project has three forms:

  • Form1: To choose language
  • Form2: For English language
  • Form3: For Arabic language

Form2 and Form3 have the same controls:

  • The ActiveX control (VB6Flexgrid1) adds the file VB6Flexgrid.ocx
  • The button control (btnDelOne) to delete one row
  • The button control (btnDelAll) to clear the grid
  • The button control (btnWriteCell) writes data to the first cell
  • The button control (btnReadOne) to read the current cell
  • The button control (btnReadAll) to copy all data from grid to list box
  • The button control (btnExit) closes the form
  • The list box control (lstAllData) holds data from grid

Last Words

I hope this article is useful and helps you to create your applications. If you have any ideas or if you find any problems, please tell me. Thanks to CodeProject and thanks to all.

-- Mostafa Kaisoun

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Egypt Egypt
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
QuestionControl automatically adds a row... Pin
Member 146331806-Apr-21 0:13
Member 146331806-Apr-21 0:13 
QuestionClick in cell Pin
gutierrezyovany197219-Jul-20 4:21
gutierrezyovany197219-Jul-20 4:21 
QuestionSource Code Pin
Member 849278018-Dec-11 0:19
Member 849278018-Dec-11 0:19 
AnswerRe: Source Code Pin
Mostafa Kaisoun18-Dec-11 18:37
Mostafa Kaisoun18-Dec-11 18:37 
GeneralRe: Source Code Pin
Member 849278018-Dec-11 18:55
Member 849278018-Dec-11 18:55 
GeneralRe: Source Code Pin
ijkrish22-Oct-12 23:07
ijkrish22-Oct-12 23:07 
GeneralRe: Source Code Pin
Mostafa Kaisoun23-Oct-12 2:18
Mostafa Kaisoun23-Oct-12 2:18 
GeneralMy vote of 5 Pin
Member 849278015-Dec-11 13:53
Member 849278015-Dec-11 13:53 
GeneralThanks. Pin
ashok28011-Apr-11 5:00
ashok28011-Apr-11 5:00 
GeneralRe: Thanks. Pin
Mostafa Kaisoun1-Apr-11 12:47
Mostafa Kaisoun1-Apr-11 12:47 
GeneralIt is really nice to have such code. I am really very thank full to you. Pin
Member 767804416-Feb-11 0:35
Member 767804416-Feb-11 0:35 
GeneralRe: It is really nice to have such code. I am really very thank full to you. Pin
Mostafa Kaisoun16-Feb-11 8:16
Mostafa Kaisoun16-Feb-11 8:16 
GeneralMy vote of 1 Pin
aaahc1-Nov-10 3:50
aaahc1-Nov-10 3:50 
GeneralMy vote of 5 Pin
mughaljee1-Jul-10 9:15
mughaljee1-Jul-10 9:15 
GeneralHi, Please do me a favor Pin
rycopiero17-Jun-10 18:32
rycopiero17-Jun-10 18:32 
GeneralRe: Hi, Please do me a favor Pin
Mostafa Kaisoun17-Jun-10 23:33
Mostafa Kaisoun17-Jun-10 23:33 
GeneralRe: Hi, Please do me a favor Pin
rycopiero18-Jun-10 3:05
rycopiero18-Jun-10 3:05 
GeneralEditable Grid Control With Support for Combo Boxes and Check Boxes with source. Pin
rarmas26-Feb-10 3:50
rarmas26-Feb-10 3:50 
GeneralRe: Editable Grid Control With Support for Combo Boxes and Check Boxes with source. Pin
Mostafa Kaisoun2-Mar-10 12:54
Mostafa Kaisoun2-Mar-10 12:54 
GeneralPlease send me source code for vb6flexgrid control Pin
Rajan Verma 200919-Dec-09 7:50
Rajan Verma 200919-Dec-09 7:50 
GeneralRe: Please send me source code for vb6flexgrid control Pin
Mostafa Kaisoun26-Feb-10 11:35
Mostafa Kaisoun26-Feb-10 11:35 
GeneralRe: Please send me source code for vb6flexgrid control Pin
shganainy18-Feb-11 17:39
shganainy18-Feb-11 17:39 
Dear sir
i need professional flexgrid my e-mail : sh_ganainy@hotmail.com 0100105108
Generalhoi Pin
juetiezhernandez20-Oct-09 20:34
juetiezhernandez20-Oct-09 20:34 
GeneralRe: hoi Pin
Mostafa Kaisoun21-Oct-09 4:30
Mostafa Kaisoun21-Oct-09 4:30 
QuestionHOW TO CHANGE FONT AND SIZE Pin
Peter Wallace 13-Oct-09 19:31
Peter Wallace 13-Oct-09 19:31 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.