Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Om timer och progressbar.

Postades av 2004-02-03 12:11:46 - Benni Svensson, i forum c# (c-sharp), Tråden har 11 Kommentarer och lästs av 927 personer

När jag laddar in Form1 så tar det ganska så lång tid, därför så laddar jag också Form2
som innehåller en label och en progressbar.
Jag ville att progressbaren skall flytta sig efter tiden (eller ett fast värde)
<code>
progressBar1.Minimum = 0;
progressBar1.Maximum = 20;
progressBar1.Step = 1;

for (int i = 0; i <= 20; i++)
{
timer1.Start();
progressBar1.PerformStep();
info.Refresh();
info.Text="Ansluter till SQL Server: " + "klockan " + DateTime.Now.ToString("HH:mm:ss");
}
</code>
Vad som händer är att progressbaren går till fullt värde med en gång.
Hur bör jag göra?(hittar ingenting använtbart på nätet).


Svara

Sv: Om timer och progressbar.

Postades av 2004-02-03 12:22:19 - Johan Bovin

Du bör nog lägga med en timer eller nåt så att du kan få lite events. nu så uppdaterar ju inte formen sig + att det nog går ganska fort..

lite links:
http://msdn.microsoft.com/library/en-us/cpref/html/frlrfsystemwindowsformsprogressbarclassvaluetopic.asp?frame=true


Svara

Sv: Om timer och progressbar.

Postades av 2004-02-03 14:38:03 - Benni Svensson

Jo jag har testat denna innan.
Enligt vad jag förstår, så skall man lägga till en timer först(timer1)
Därefter:
<code>
private Timer time = new Timer();
</code>
redan här ett fel
<code>
E:\SAW_Registrering\SAW_Registrering\Form2.cs(21): 'Timer' is an ambiguous reference
</code>
Jag har tagit bort alla referenser till time1, vet inte om det var fel eller rätt.

InitializeMyTimer() ligger under InitializeComponent();
Sedan har jag bara kopierat classerna.

Det blir något fel...


Svara

Sv: Om timer och progressbar.

Postades av 2004-02-03 15:13:22 - Johan Bovin

<code>
public class Form1 : System.Windows.Forms.Form
{
private System.Windows.Forms.Timer timer1;
private System.Windows.Forms.ProgressBar progressBar1;
private System.ComponentModel.IContainer components;

public Form1()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();
InitializeMyTimer();
}
private void InitializeMyTimer()
{
// Set the interval for the timer.
timer1.Interval = 250;
// Connect the Tick event of the timer to its event handler.
timer1.Tick += new EventHandler(IncreaseProgressBar);
// Start the timer.
timer1.Start();
}

private void IncreaseProgressBar(object sender, EventArgs e)
{
// Increment the value of the ProgressBar a value of one each time.
progressBar1.Increment(1);

// Determine if we have completed by comparing the value of the Value property to the Maximum value.
if (progressBar1.Value == progressBar1.Maximum)
// Stop the timer.
timer1.Stop();
}
....
</code>


Svara

Sv: Om timer och progressbar.

Postades av 2004-02-03 15:30:39 - Benni Svensson

Detta är väldigt märkvärdigt.
Om jag använder mig av din kod, så händer ingenting, men om jag lägger dit en MessageBox, då får den fart.
<code>
progressBar1.Increment(1);
// Determine if we have completed by comparing the value of the Value property to the Maximum value.
// MessageBox.Show("japp");
if (progressBar1.Value == progressBar1.Maximum)
// Stop the timer.
timer1.Stop();
</code>
Hur kommer jag förbi det?


Svara

Sv: Om timer och progressbar.

Postades av 2004-02-03 15:45:58 - Patrik Löwendahl

Du skall använda Invoke på formulär objektet för att anropa koden som uppdaterar progressbaren.

Man får inte direkt från en annat tråd (vilket är vad en timer invokerar sitt event från) uppdatera kontroller i ett formulär, utan det är bara huvudtråden som får göra det.

Kolla på Form.Invoke och MethodInvoker i hjälpen.


Svara

Sv: Om timer och progressbar.

Postades av 2004-02-03 16:00:03 - Johan Bovin

Är det nåt sånt här du försöker göra?
http://www.codeproject.com/csharp/PrettyGoodSplashScreen.asp


Svara

Sv: Om timer och progressbar.

Postades av 2004-02-03 18:19:08 - Benni Svensson

Tack för att ni försöker hjälpa mig, men här slår jag tydligen huvudet i taket.
Vad jag ville göra är följande:
Om min SQLServer är igång, så skall Form1 laddas, där har jag inga som helst problem.
Om nu inte SQLServern är igång, då skall den startas, inga problem där heller. Det
tar dock en stund att starta up server, så där för så laddar jag upp Form2 under tiden.
Och här hade jag velat ha en progressbar, under tiden som SQLServern startas.
När sedan servern har startat, då dödar jag Form2, heller inga problem.

Så det jag frågar efter, kan synas som lite ögongodis, men dt är ju det som skiljer agnarna och ......


Svara

Sv: Om timer och progressbar.

Postades av 2004-02-03 21:51:08 - Johan Bovin

ja, men länken visar ju hur du kan lösa allt det där...


Svara

Sv: Om timer och progressbar.

Postades av 2004-02-03 23:08:21 - Benni Svensson

Japp, jag har laddat ner filen, men det är ju inte bara att kopiera och klistra in, då är man ju helt ute. Jag vill försöka att förstå vad som händer, och sedan ändra så att det passar mina syften. Först då kan det ju vara någonting, eller hur?


Svara

Sv: Om timer och progressbar.

Postades av 2004-02-04 11:08:05 - Benni Svensson

Tack Arathorn.
Den blev kanonbra, och innehöll fler funktioner än vad jag hadde tänkt :-)

Jag är fortfarande lite bryd varför den skall in i registret, men det löser sig nog.


Svara

Sv: Om timer och progressbar.

Postades av 2004-02-04 12:00:40 - Johan Bovin

Det den gör att den sparar lite grejer nere i registret. Det behöver du ju inte göra om du inte vill. Dessa borde vara enkla att hårdkoda i koden eller läsa nån annanstans ifrån istället. Det görs i metoden ReadIncrements. Sen sparar han grejerna i StoreIncrements. Om jag fattar det hela rätt så sparar han nåt typ av snitt hur lång tid det har tagit i genomsnitt varje gång för att på så sätt kunna justera progressbaren.
Rätt smart, men kanske overkill. Du kan ju istället för att spara sakerna i registret spara dem i settingsfil eller nåt istället. Alternativt så skiter du i "själv kalibreringen"...
och tar bort allt onödigt tjafs...


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 155
27 952
271 704
6 040
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies