Написать приложение "Школьный журнал" - Visual Basic .NET

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

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

как можно составить журнал оценок на vb.net DataGridview Помогите Пожалуйста

Решение задачи: «Написать приложение "Школьный журнал"»

textual
Листинг программы
  1. Imports System.IO
  2. Imports System.Text
  3. Public Class Form3
  4.     Private txtName As String
  5.     Private delim As String
  6.     Private classReg(,) As String
  7.     Private title() As String
  8.     Private nn, mm As Integer
  9.     Private Sub Form3_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
  10.         txtName = Path.Combine(Application.StartupPath, "classRegister2015.csv")
  11.         delim = ";"
  12.         If File.Exists(txtName) Then
  13.             readData()
  14.             setDGV()
  15.         End If
  16.     End Sub
  17.     Private Sub readData()
  18.         Try
  19.             Dim rr() As String = File.ReadAllLines(txtName, Encoding.Default)
  20.             nn = rr.Length
  21.             title = rr(nn - 1).Split(delim)
  22.             mm = title.Length
  23.             nn -= 1
  24.             ReDim Preserve rr(nn - 1)
  25.             ReDim classReg(nn - 1, mm - 1)
  26.             For i = 0 To nn - 1
  27.                 Dim cc() As String = rr(i).Split(delim)
  28.                 For j = 0 To mm - 1
  29.                     classReg(i, j) = cc(j)
  30.                 Next
  31.             Next
  32.         Catch ex As Exception
  33.             MsgBox(ex.Message)
  34.         End Try
  35.     End Sub
  36.     Private Sub setDGV()
  37.         Try
  38.             With DataGridView1
  39.                 .ColumnCount = mm
  40.                 For j = 0 To mm - 1
  41.                     .Columns(j).HeaderText = title(j)
  42.                 Next
  43.                 For i = 0 To nn - 1
  44.                     .Rows.Add(New DataGridViewRow())
  45.                     For j = 0 To mm - 1
  46.                         .Rows(i).Cells(j).Value = classReg(i, j)
  47.                     Next
  48.                 Next
  49.                 .AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells
  50.                 .Columns(0).AutoSizeMode = DataGridViewAutoSizeColumnMode.None
  51.                 .Columns(0).Width = 150
  52.                 .Columns(0).Frozen = True
  53.                 .Columns(0).DividerWidth = 3
  54.                 .EnableHeadersVisualStyles = False
  55.                 .ColumnHeadersDefaultCellStyle.BackColor = Color.LightYellow
  56.                 .ColumnHeadersDefaultCellStyle.Font = New Font(.Font.FontFamily, .Font.Size, FontStyle.Bold)
  57.                 .ColumnHeadersDefaultCellStyle.Padding = New Padding(5, 5, 0, 5)
  58.                 .ColumnHeadersBorderStyle = DataGridViewHeaderBorderStyle.Single
  59.                 .Columns(0).DefaultCellStyle.BackColor = Color.LightYellow
  60.                 .TopLeftHeaderCell.Value = "8A"
  61.             End With
  62.         Catch ex As Exception
  63.             MsgBox(ex.Message)
  64.         End Try
  65.     End Sub
  66.     Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
  67.         'New Date
  68.         With DataGridView1
  69.             .Columns.Add("col" & nn.ToString, Format(Now, "d.MM"))
  70.             .FirstDisplayedCell = .Rows(0).Cells(.Columns.Count - 1)
  71.         End With
  72.     End Sub
  73.     Private Sub DataGridView1_CellFormatting(sender As System.Object, e As System.Windows.Forms.DataGridViewCellFormattingEventArgs) Handles DataGridView1.CellFormatting
  74.         'двойки отмечаем красным
  75.         If IsNumeric(e.Value) Then
  76.             If CInt(e.Value) < 3 Then
  77.                 e.CellStyle.ForeColor = Color.Red
  78.             End If
  79.         End If
  80.     End Sub
  81.     Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
  82.         'Save
  83.         With DataGridView1
  84.             nn = .Rows.Count - 1
  85.             mm = .Columns.Count
  86.             ReDim classReg(nn, mm - 1)
  87.             For i = 0 To nn - 1
  88.                 For j = 0 To mm - 1
  89.                     classReg(i, j) = .Rows(i).Cells(j).Value
  90.                 Next
  91.             Next
  92.             For j = 0 To mm - 1
  93.                 classReg(nn, j) = .Columns(j).HeaderText
  94.             Next
  95.         End With
  96.         Dim s As String = ""
  97.         Dim ss(nn) As String
  98.         For i = 0 To nn
  99.             s = ""
  100.             For j = 0 To mm - 1
  101.                 s &= classReg(i, j) & delim
  102.             Next
  103.             ss(i) = s.Substring(0, s.Length - delim.Length)
  104.         Next
  105.         File.WriteAllLines(txtName, ss, Encoding.Default)
  106.     End Sub
  107. End Class

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


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

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

9   голосов , оценка 4.111 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы