VB
.NET
- Exibindo Recursos do Sistema com gráfico
![]() |
Hoje temos um projeto que exibe os recursos do sistema como CPU, memória e processos e também cria um gráfico para indicar o uso deste recursos. |
Neste projeto iremos usar o componente PerformanceCounter que representa um componente contador de desempenho do Windows.
Este componente pode ser usado para ler contadores predefinidos existentes ou contadores personalizados e exibir os dados de desempenho. Existem muitos contadores predefinidos que podem ser usados.
Recursos usados :
Exibindo os recursos do sistema com Gráfico
Abra o VS Express 2013 for Windows Desktop e clique em New Project;
A seguir selecione a linguagem Visual Basic e o template Windows Forms Application;
Informe o nome RecursosGrafico e clique no botão OK;
A seguir selecione o formulário padrão form1.vb e partir da ToolBox, os seguintes controles:
1 Panel
3 TextBox
3 Labels
3 PerformanceCounter
1 Timer
Disponha os controles conforme o leiaute abaixo:
O código usado no formulário é visto a seguir:
Public Class Form1
Dim g As Graphics
Dim m_sngX As Single = 0
Dim m_sngY As Single
Dim m_sngCPUY As Single
Dim m_sngProcsY As Single
Dim m_sngMemY As Single
Dim cntr As Integer = 0
Dim penCPU As New System.Drawing.Pen(Color.Red, 2.0F)
Dim penProcs As New System.Drawing.Pen(Color.Green, 3.0F)
Dim penMem As New System.Drawing.Pen(Color.Blue, 4.0F)
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
g = PainelGrafico.CreateGraphics()
PainelGrafico.BackColor = Color.White
m_sngY = PainelGrafico.Height
txtCPU.BackColor = Color.Red
txtMemoria.BackColor = Color.Blue
txtProcessos.BackColor = Color.Green
End Sub
Private Sub tmrClock_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrClock.Tick
Dim sglCPU As Single = PfcCPU.NextValue() / 100
Dim sglProcessos As Single = PfcProcessos.NextValue()
Dim sglMemoria As Single = PfcMemoria.NextValue() / 1024
lblUsoCPU.Text = sglCPU.ToString("p")
lblMemoria.Text = sglMemoria.ToString("f0") + " KB"
lblProcessos.Text = sglProcessos.ToString()
DesebgaGrafico(sglCPU, sglProcessos, sglMemoria)
If cntr > 10 Then
End If
cntr = cntr + 1
End Sub
Private Sub DesebgaGrafico(ByVal sglCPU As Single, ByVal sglProc As Single, ByVal sglMem As Single)
Dim sglHeight As Single = PainelGrafico.Height
g.DrawLine(penCPU, m_sngX, m_sngY - 50, m_sngX + 10, sglHeight - (sglCPU * sglHeight) - 50)
g.DrawLine(penCPU, m_sngX + 10, sglHeight - (sglCPU * sglHeight) - 50, m_sngX + 10, PainelGrafico.Height - 50)
g.DrawLine(penMem, m_sngX, sglHeight - (sglMem / 3929000) * sglHeight - 50, m_sngX + 10, sglHeight - (sglMem / 3929000) * sglHeight - 50)
g.DrawLine(penProcs, m_sngX, sglHeight - (sglProc / 100) * sglHeight - 50, m_sngX + 10, sglHeight - (sglProc / 100) * sglHeight - 50)
m_sngX = m_sngX + 10
End Sub
End Class
|
Basta executar o projeto, para obter o resultado da utilização da CPU, memória e a quantidade de processos em execução:
Pegue o projeto
completo aqui:
Recursos_Grafico.zip
Porque não vos fizemos saber a virtude e a vinda de nosso Senhor Jesus Cristo, seguindo fábulas artificialmente compostas; mas nós mesmos vimos a sua majestade. (2 Pedro 1:16)
Veja os
Destaques e novidades do SUPER DVD Visual Basic
(sempre atualizado) : clique e confira !
Quer migrar para o VB .NET ?
Quer aprender C# ??
Quer aprender os conceitos da Programação Orientada a objetos ? Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ? |
Gostou ?
Compartilhe no Facebook
Compartilhe no Twitter
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#
VB.NET - Aplicações completas para você aprender a programar