Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Apertura e chiusura form senza immagine
Forum - C# / VB.NET - Apertura e chiusura form senza immagine

Avatar
fosforo (Normal User)
Expert


Messaggi: 267
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 15:40
Mercoledì, 25/03/2015
Ciao
Vorrei aprire un Form con al suo interno un'immagine e
dopo pochi secondi chiuderlo.

Ho creato questo script:

StartImage f1 = new StartImage();
f1.Show();
var stopwatch = Stopwatch.StartNew();
Thread.Sleep(5000);
MessageBox.Show("Questo è un programma ");
f1.Hide();

Il Form si apre e si chiude correttamente ma qualsiasi cos c'è al suo interno non appare.

Grazie dell'aiuto anticipatamente


Scusate per la figuraccia.
PM Quote
Avatar
Thejuster (Member)
Guru^2


Messaggi: 1704
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 16:50
Mercoledì, 25/03/2015
In che senso qualsiasi cosa al suo interno non appare?

Se hai impostato l'immagine come background non devi aver
Nessun problema.

Edit:
Ricorda che il thread.sleep frezza il programma per 5 secondi.

Utilizza un timer invece del thread sleep

Ultima modifica effettuata da Thejuster il 25/03/2015 alle 16:53


PM Quote
Avatar
fosforo (Normal User)
Expert


Messaggi: 267
Iscritto: 06/04/2009

Segnala al moderatore
Postato alle 16:56
Mercoledì, 25/03/2015
Ciao Thejuster

Frezzare il programma è proprio quello che voglio.
In pratica con il mio script, se all'interno del Form c'è un Button,
non lo vedo.
Lo vedo solo dopo la fine del Freez.




Scusate per la figuraccia.
PM Quote
Avatar
Ultimo (Member)
Expert


Messaggi: 513
Iscritto: 22/05/2010

Segnala al moderatore
Postato alle 17:28
Mercoledì, 25/03/2015
lo sleep freeza il disegno della finestra


Ultimo (Hai voluto la bicicletta ? ....)

Studiare LINQ, WPF, ASP.NET MVC, Entity Framwork, C#, Blend, XAML, Javascript, HTML5, CSS .....(tanta roba)

https://www.dropbox.com/s/c2aots5x4urgbhf/setup_game_sudoku ...
PM Quote
Avatar
Thejuster (Member)
Guru^2


Messaggi: 1704
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 8:52
Giovedì, 26/03/2015
devi usare per forza un timer con form senza bordi.

Ho provato diverse soluzioni anche con un Enumeratore ottenendo lo stesso risultato

Codice sorgente - presumibilmente C++

  1. public void Attesa()
  2. {
  3.  
  4. Attendi(5000);
  5.  
  6. }
  7.  
  8.  
  9.  public IEnumerator Attendi(int tempo)
  10.  {
  11.    
  12. yield return tempo;
  13.  
  14.  }



Ma ottengo la stessa funzione del freeze.

La cosa non cambia anche se mi aggancio allo shown del form

Codice sorgente - presumibilmente C# / VB.NET

  1. protected override void OnShown(EventArgs e)
  2.         {
  3.             base.OnShown(e);
  4.            
  5.            //Richiamo del thread o dell'Enumeratore
  6.  
  7.         }




Ultima modifica effettuata da Thejuster il 26/03/2015 alle 9:50


PM Quote
Avatar
archemi (Normal User)
Pro


Messaggi: 61
Iscritto: 08/01/2014

Segnala al moderatore
Postato alle 15:11
Venerdì, 27/03/2015
L'immagine è nel background image del form e form border style = none
Ho aggiunto un timer.

Se lo vuoi comandare da un altro form, ridefiniti il sub new e specifichi l'immagine che vuoi caricare e il tempo in cui rimarrà visibile in millisecondi

Codice sorgente - presumibilmente VB.NET

  1. Public Class Form1
  2.  
  3.     Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  4.         Timer1.Interval = 5000
  5.         Timer1.Start()
  6.     End Sub
  7.  
  8.     Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
  9.         Me.Close()
  10.     End Sub
  11. End Class


Ultima modifica effettuata da archemi il 27/03/2015 alle 15:15
PM Quote
Avatar
Snogar (Normal User)
Pro


Messaggi: 130
Iscritto: 09/01/2012

Segnala al moderatore
Postato alle 16:36
Venerdì, 27/03/2015
Scusa ma stai cercando di fare uno splash screen?  ...nel caso visual studio già lo contempla.


PM Quote