Jump to content

Bloco de Notas


bids
 Share

Recommended Posts

a segunda vez é mais rapido

Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles Me.Shown, MyBase.Shown, MyClass.Shown
    AZEITE = System.Text.Encoding.Unicode
    With ToolStripProgressBar1
	    .Minimum = 1
	    .Maximum = 3
	    .Value = 1
	    .Step = 1
	    For i As Integer = .Minimum To .Maximum
		    .PerformStep()
		    If My.Application.CommandLineArgs.Any Then
			    Dim nomeFicheiro As String = My.Application.CommandLineArgs.First()
			    ru = nomeFicheiro
			    Dim SR As New IO.StreamReader(nomeFicheiro, System.Text.Encoding.Default)
			    While Not SR.EndOfStream
				    Dim ver As New FileInfo(ru)
				    Me.Text = ver.Name & " - Bloco de Notas"
				    TextBox1.Text = SR.ReadToEnd
			    End While
			    SR.Close()
		    End If
	    Next i
    End With
    Timer2.Start()
    If BarraToolStripMenuItem.Checked = True Then
	    StatusStrip1.Dock = DockStyle.Bottom
	    StatusStrip1.Visible = True
    End If
    If Not StatusStrip1.Dock = DockStyle.Bottom Then
	    StatusStrip1.Dock = DockStyle.None
	    StatusStrip1.Visible = False
	    BarraToolStripMenuItem.Checked = False
    End If
   End Sub

Ajude-me?

Link to comment
Share on other sites

ok eu irei adicionar

iF I = 3 THEN
	 Dim nomeFicheiro As String = My.Application.CommandLineArgs.First()
							    ru = nomeFicheiro
							    Dim SR As New IO.StreamReader(nomeFicheiro, System.Text.Encoding.Default)
							    While Not SR.EndOfStream
									    Dim ver As New FileInfo(ru)
									    Me.Text = ver.Name & " - Bloco de Notas"
									    TextBox1.Text = SR.ReadToEnd
							    End While
							    SR.Close()
End If

Mais eu não acho que o aplicativo vai ficar tão rapido quanto ao bloco de notas só com isso!

Existe mais alguma forma?

Ajude-me?

Link to comment
Share on other sites

Qual a razão dessa progressbar se não tens uma operação dividida que justifique mostrar o progresso?

A progressbar fazia sentido se lesses por exemplo o ficheiro linha a linha e mostrasses a progress para cada linha lida.

Agora da forma que tens, não faz ai absolutamente nada.

Em relação à lentidadão, poderá haver alguma, caso seja logo após a compilação é normal. A aplicação compila internamente à medida que é utilizada (http://blogs.telerik.com/justteam/posts/13-05-28/understanding-net-just-in-time-compilation).

No entanto julgo que numa aplicação de bloco de notas não deve ser muito perceptivel.

Não estás a fazer mais nada ao iniciar?

Acontece caso executes com e sem parametro?

Link to comment
Share on other sites

Para usar o progress bar para tal ação eu teria de saber o numero de linhas.

Eu também tenho outro form que é o form de formato de texto.

E sim tenho também um timer que calcula a quanto tempo a aplicação está aberta

Edited by bids

Ajude-me?

Link to comment
Share on other sites

Acontece caso executes com e sem parametro?

...

De resto, se executares em modo debug e andares de linha a linha, não consegues ver qual a operação que provoca a lentidão?

Em relação ao leres o ficheiro para uma string, se não precisas de nada em especial, porque não usas algo do tipo:

TextBox1.Text = File.ReadAllText(nomeFicheiro)
Link to comment
Share on other sites

De resto, se executares em modo debug e andares de linha a linha, não consegues ver qual a operação que provoca a lentidão?

Em relação ao leres o ficheiro para uma string, se não precisas de nada em especial, porque não usas algo do tipo:

TextBox1.Text = File.ReadAllText(nomeFicheiro)

Link to comment
Share on other sites

Eu executei o programa sem o formload mais o tempo continua o mesmo.

O meu formload está assim agora :

Private Sub frmMain_Load(sender As Object, e As EventArgs) Handles Me.Load
    AZEITE = System.Text.Encoding.Unicode

    If My.Application.CommandLineArgs.Any Then
	    Dim nomeFicheiro As String = My.Application.CommandLineArgs.First()
	    ru = nomeFicheiro
	    Dim SR As New IO.StreamReader(nomeFicheiro, System.Text.Encoding.Default)

	    Dim ver As New FileInfo(ru)
	    Me.Text = ver.Name & " - Bloco de Notas"
	    TextBox1.Text = IO.File.ReadAllText(nomeFicheiro)
	    SR.Close()
    End If
    If BarraToolStripMenuItem.Checked = True Then
	    StatusStrip1.Dock = DockStyle.Bottom
	    StatusStrip1.Visible = True
    End If
    If Not StatusStrip1.Dock = DockStyle.Bottom Then
	    StatusStrip1.Dock = DockStyle.None
	    StatusStrip1.Visible = False
	    BarraToolStripMenuItem.Checked = False
    End If
    Timer1.Enabled = True
   End Sub

Ajude-me?

Link to comment
Share on other sites

Não vejo ai nada que possa provocar a demora.

Usando o ReadAllText não precisas do StreamReader. Não está ai a fazer nada.

Se colocares um breakpoint na primeira linha do form_load e executares em debug, a lentidão é antes de parar no breakpoint ou depois?

E é lentidão em exactamente o que? Até o form ficar visivel?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.