DataGrid сохранение ширины столбцов - VB

Узнай цену своей работы

Формулировка задачи:

при загрузке DataGrid меняю ширину столбцов и сохраняю информацию. При следующей загрузке информация о ширине столбцов загружается
Sub DBGridLayout(Operation As String)
Dim lWidth As Long
Dim clm As Columns
Dim lDefWidth As Long
lDefWidth = dg.DefColWidth
For Each clm In dg.Columns
With clm
Select Case LCase(Operation)
Case "save"
lWidth = dg.Width
SaveSetting App.Title, _
"Cols", CStr(.ColIndex), lWidth
Case "load"
lWidth = GetSetting(App.Title, _
"Cols", CStr(.ColIndex), _
lDefWidth)
dg.Width = lWidth
End Select
End With
Next clm
End Sub
Private Sub Form_Load()
DBGridLayout "Load"
End Sub
Private Sub Form_Unload(Cancel As Integer)
DBGridLayout "Save"
End Sub
CStr(.ColIndex) здесь выдает ошибку немогу разобраться почему. Прошу вашей помощи

Решение задачи: «DataGrid сохранение ширины столбцов»

textual
Листинг программы
<font color="blue">Sub</font> DBGridLayout(Operation <font color="blue">As</font> <font color="blue">String</font>)

   <font color="blue">Dim</font> lWidth <font color="blue">As</font> <font color="blue">Long</font>
   <font color="blue">Dim</font> clm <font color="blue">As</font> Column       <font color="00AA00">'Íå Columns à Column</font>
   <font color="blue">Dim</font> lDefWidth <font color="blue">As</font> <font color="blue">Long</font>
   
   lDefWidth = <font color="darkblue"><b>1500</b></font> <font color="00AA00">' dg.DefColWidth</font>
   
   <font color="blue">For</font> <font color="blue">Each</font> clm <font color="blue">In</font> dg.Columns
   <font color="blue">With</font> clm
      <font color="blue">Select</font> <font color="blue">Case</font> LCase(Operation)
      <font color="blue">Case</font> <font color="teal">"save"</font>
         lWidth = dg.<font color="blue">Width</font>
         <font color="blue">SaveSetting</font> App.Title, <font color="teal">"Cols"</font>, CStr(.ColIndex), lWidth
      <font color="blue">Case</font> <font color="teal">"load"</font>
         lWidth = GetSetting(App.Title, _
         <font color="teal">"Cols"</font>, CStr(.ColIndex), lDefWidth)
         dg.<font color="blue">Width</font> = lWidth
      <font color="blue">End</font> <font color="blue">Select</font>
   <font color="blue">End</font> <font color="blue">With</font>
   <font color="blue">Next</font> clm
<font color="blue">End</font> <font color="blue">Sub</font>

<font color="blue">Private</font> <font color="blue">Sub</font> Form_Load()
   DBGridLayout <font color="teal">"Load"</font>
<font color="blue">End</font> <font color="blue">Sub</font>

<font color="blue">Private</font> <font color="blue">Sub</font> Form_Unload(Cancel <font color="blue">As</font> <font color="blue">Integer</font>)
   DBGridLayout <font color="teal">"Save"</font>
<font color="blue">End</font> <font color="blue">Sub</font>

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.7 из 5
Похожие ответы