2013-06-04 2 views
0

Я импортирую данные с SQL Server с помощью VB6 и отображая его в сетке. В Grid есть 100 строк, и когда я пытаюсь заполнить одну строку из базы данных в одной строке Grid, она повторяется в Grid 100 раз, но я хочу, чтобы она оставалась в одной строке. Что я делаю не так?Повторение строк в VB6

Код:

While Count < 100 
    Dim adoCSRS As adodb.Recordset 
    Set adoCSRS = New adodb.Recordset 
    adoCSRS.CursorLocation = adUseClient 

    'Then comes my query which has no problem as the data is being retrieved without any problem and then' 

    Dim i As Integer 

    While Not adoCSRS.EOF 


     'After this part, I assign the text fields their respective values from Database and then' 

     i = i + 1 

     MSFlexGrid.AddItem _ 
     adoCSRS.Fields("Coulmn Name") & Chr(9) & _ 
     adoCSRS.Fields("Coulmn Name") & Chr(9) & _ 
     adoCSRS.Fields("Coulmn Name") & Chr(9) & _ 
     adoCSRS.Fields("Coulmn Name") & Chr(9) & _ 
     adoCSRS.Fields("Coulmn Name") & Chr(9) & _ 
     adoCSRS.Fields("Coulmn Name") & Chr(9) & _ 
     adoCSRS.Fields("Coulmn Name") & Chr(9) 

     MSFlexGrid.Col = 11 
     MSFlexGrid.Row = i 
     MSFlexGrid.CellFontName = "Wingdings" 
     MSFlexGrid.CellFontSize = 10 
     MSFlexGrid.CellAlignment = flexAlignCenterCenter 
     MSFlexGrid.TextMatrix(i, 14) = uncheckedBox 

     adoCSRS.MoveNext 
    Wend 

    MSFlexGrid.RowSel = 0 
    successful = True 

    Count = Count + 1 
Wend 

ответ

0

Вы должны иметь два отдельных (не вложенных) в то время как петли. Первый цикл добавляет данные из базы данных. Вторая петля добавляет пустые строки в сетку:

Dim i As Integer 
i = 0 
While Not adoCSRS.EOF 
    i = i + 1 
    ' Add from db - same as your code above ' 
    MSFlexGrid.AddItem _ 
    adoCSRS.Fields("Coulmn Name") _ 
    ... 
Wend 

While i < 100 
    i = i + 1 
    ' Add blank row ' 
    MSFlexGrid.AddItem _ 
    ... 
Wend 
+0

Я знаю. Я хочу показать 100 строк в сетке, но я не хочу, чтобы поля, извлеченные из базы данных, отображались во всех этих 100 строках. – Reaper211

+1

@ Reaper211 - см. Мой обновленный ответ. –

+0

Спасибо за ваше время. Я дам вам знать завтра :) – Reaper211