ПО комбобоксам: процедура вызова SozVesh у меня находится в отдельном модуле:
- Код: Выделить всё
Public Sub sozves()
Dim sv As form = New SozVech()
sv.Show()
End Sub
он потребовал аргумент, я поставил в скобки glavn и в резултате ничего так и не происходит.
По таблице: настроил так, чтобы первые два были сверху, а сейчас надо еще, чтобы как в норм таблице в длинных периодах добавлялись две клетки. Это сделать я тоже сделал, но у меня остаются пустые места в следующем ряду. Скажите как это можно сделать.
Вот код на данном этапе:
- Код: Выделить всё
Dim i As Integer = 0
Dim c As ChemElemCell.ChemElemCell
Dim Props() As String = Nothing
Dim Lines() As String = Nothing
Dim text As String = ""
Dim X, Y As Integer
Dim tempD1, tempD2, tempD3, tempD4 As Decimal
Const CellsPerLine As Integer = 8
Const TableX As Integer = 49
Try
Dim SR As New IO.StreamReader("Table.txt")
Lines = Regex.Split(SR.ReadToEnd, vbCrLf)
For Each Line As String In Lines
Props = Regex.Split(Line, " - ")
c = New ChemElemCell.ChemElemCell
tempD1 = CDec(Props(1))
tempD1 = Math.Round(tempD1, 3)
tempD2 = CDec(Props(2))
tempD2 = Math.Round(tempD2, 3)
If i = 0 Then
X = TableX + c.Size.Width * 6
Y = (i \ CellsPerLine + 1) * c.Height
c.Location = New Point(X, Y)
ElseIf i = 1 Then
X = TableX + c.Size.Width * 7
Y = (i \ CellsPerLine + 1) * c.Height
c.Location = New Point(X, Y)
c.GradientColor1 = Color.ForestGreen
c.GradientColor2 = Color.LawnGreen
Else
X = TableX + c.Size.Width * ((i - 2) Mod CellsPerLine)
Y = ((i + 6) \ CellsPerLine + 1) * c.Height
c.Location = New Point(X, Y)
End If
If Props(7) = "гал" Then
X = TableX + c.Size.Width * ((i - 2) Mod CellsPerLine)
Y = ((i + 6) \ CellsPerLine + 1) * c.Height
c.Location = New Point(X, Y)
c.GradientColor1 = Color.Blue
c.GradientColor2 = Color.Azure
'закончилась установка цвета галогенов
'и т д по остальным группам
'я дописал в файл еще одну колонку с обозначениями групп веществ
End If
c.Name = "cec" & Props(0)
c.ElementSymbol = Props(0)
c.ElementNumber = Props(6)
c.ElementName = Props(4)
c.ElementLatinName = Props(5)
c.ElementNum1 = tempD1
c.ElementNum2 = tempD2
tbpMend.Controls.Add(c)
If i = 70 Then Exit Sub
i = i + 1
Next
Компьютеры были придуманы чтобы исправлять ошибки людей. Но кто же тогда будет исправлять ошибки компьютера?..