Hi Allz,
hatte auch das Problem und so gelöst:
Zuerst Flexgrid mit Data-control laden lassen und anschließend das Control passend durchstilen. Genauso Überschriften, Feldbreiten u.v.a. Einschließlich Farben. Und nicht umgekehrt: Das Control stilen und dann Daten laden, das funzt nicht, weil Data mit dem Control macht was es will.
Dazu ein Beispiel aus meinem Proggi:
Private Sub Reg_Click()
Dim d As DienstTyp
Dim n As Long, i As Long
Dim t As Date, v As Date, b As Date
' ............. dieser Part definiert einige Dinge
If cbDatum.Text = "" Then Exit Sub
TxtSoll.Text = ""
Fleiste(2).Caption = ""
Fleiste(1).Width = 0
d = GetVorgabeWB(Reg.SelectedItem.tag, cbDatum.Text)
n = DateDiff("n", d.Von, d.Bis)
On Error Resume Next
If n < 0 Then t = DateAdd("d", 1, cbDatum.Text) Else t = CDate(cbDatum.Text)
If Err.Number > 0 Then Exit Sub
On Error GoTo 0
v = CVDate(CStr(cbDatum.Text) & " " & CStr(d.Von))
b = CVDate(CStr(t) & " " & CStr(d.Bis))
t = v
n = 30
' ..................................... aber jetzt kommt DATA 1 ins Spiel
' ........
Grid.Visible = False
With Data1
.Connect = ";uid=admin;pwd=sandra"
.DatabaseName = GetDBName
.RecordSource = "Select" & _
"T1,T2,T3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,T15,t16,t17,t18,t19,t2" & _
",Funktion,Name,Dienst,Ist,Bemerkung,Close " & _
"From Wachbuch " & _
"Where Tag = #" & Format(CDate(cbDatum.Text), "m-d-yy") & _
"#" & _
" And Dienst = '" & Reg.SelectedItem.tag & "' And" & _
"Bemerkung Is NULL Order by Funktion,Name"
.Refresh
End With
' .................................. Data hat geladen
' ................................................
' .................................. Flexgrid wird jetzt nachjustiert
' ..........................
With Grid
.Row = 0
.Col = 0
.Text = "Name"
For i = 1 To 22
.Col = i
.Text = ""
Next
End With
i = 0
Do
t = DateAdd("n", n, v)
n = n + 30
i = i + 1
With Grid
.Col = i
.WordWrap = True
.Text = Format(t, "hh: mm")
End With
Loop While t < b
If i = 1 Then Grid.Text = ""
For i = 1 To 10
Grid.AddItem " "
Next
ListeWB Grid, cbDatum.Text, Reg.SelectedItem.tag
Grid.Visible = True
'..................................................... Done!
' ...............................................
On Error Resume Next
If Not IsNull(Data1.Recordset!ist) Then
Fleiste(2) = Data1.Recordset!ist
Zustandslabel frmWachbuch, TxtSoll.Text, Fleiste(2).Caption, Fleiste( _
2).Width
End If
frmMain.Toolbar.Buttons(7).Enabled = True
If Not Data1.Recordset.EOF Then
If Data1.Recordset("Close") Then
frmMain.Toolbar.Buttons(7).Enabled = False
End If
End If
End Sub cu
Lordchen |