senito Posted September 8, 2006 at 10:54 AM Report Share #49058 Posted September 8, 2006 at 10:54 AM Splash Screen Para começar deve-se criar um novo projecto C# Windows Application (File -> New -> Project ->Visual C# Projects -> Windows Application). Dar um nome ao projecto, ex. SplashScreen. Para já vamos deixar de lado o form actual e vamos adicionar outro form ao projecto. Para isso, é preciso ir a Project menu e clicar em Add Windows Form. Dar o nome de Splash.cs e clicar em OK. O Visual Studio .NET criou um novo form. Agora vamos fazer uns ajustes nesse form. Colocar a FormBorderStyle como None, a StartPosition como CenterScreen, o ShowInTakbar como false. Agora vamos à ToolBox e arrastamos uma PictureBox e inserimos uma imagem. Também pode ser feito através do BackgroundImage do form. Fica ao vosso critério. Depois de inserir a imagem, colocar a propriedade do form TransparencyKey com a cor de fundo da imagem inserida. Agora para que o Splash funcione temos que o inicializar antes do Form1. Para isso temos que adicionar algum código ao Form1. Ir para o método Form1(). Este método é o construtor da class e é executado antes de qualquer outro método. Agora basta adicionar o seguinte código, depois da chamada do método InitializeComponent: Thread th = new Thread(new ThreadStart(DoSplash)); th.Start(); Thread.Sleep(3000); th.Abort(); Thread.Sleep(1000); Adicionar o seguinte método DoSplash() no final do código do Form1. private void DoSplash() { Splash sp = new Splash(); sp.ShowDialog(); } Agora uma pequena explicação do que é feito aqui. Primeiro, declaramos uma thread e dizemos quanto é que executa o método DoSplash. A linha seguinte executa a thread. Agora a thread iniciada é executada juntamente com a aplicação principal. Para prevenir que o form principal aparece antes que a thread acabe, colocamos uma pausa de 2 segundos (um sleep de 3000 miliseconds). Para assegurar que a thread é finalizada, colocamos uma pausa de 1 segundo para “limpar”. Agora vamos ver o que é feito no método DoSplash: Foi declarado uma instância para a class Splash e é então que é visualizada. Quando é chamado o método abort da thread, todas as variáveis declaradas ou instanciadas são “eliminadas”. Aqui fica um pequeno tutorial de como fazer um SplashScreen em C#. Baseado em http://www.codersource.net/csharp_splash_screen.aspx Link to comment Share on other sites More sharing options...
karva Posted September 8, 2006 at 12:23 PM Report Share #49076 Posted September 8, 2006 at 12:23 PM Atenção: Não esquecer de por using System.Threading; . De resto, está bem bom. Proud LEIC-A@IST student! Link to comment Share on other sites More sharing options...
Hipnoted Posted September 9, 2006 at 08:27 PM Report Share #49340 Posted September 9, 2006 at 08:27 PM Continua a fazer tutoriais destes. Eu estou a tentar aprender C# sozinho, isto ajuda e motiva bastante! 😛😄 "Nunca discutas com um idiota. Eles arrastam-te até ao seu nível e depois ganham-te em experiência" Link to comment Share on other sites More sharing options...
aMeScAS Posted February 9, 2007 at 02:17 AM Report Share #81402 Posted February 9, 2007 at 02:17 AM isso é para C# .. e para C++ ? Certos codigos sao diferentes... tais como o new = gcnew .... em vez de ' . ' costumas levar ' :: ', etc.. Nao estou a conseguir alterar isso para C++, agradecia alguma ajuda.. 🙂 Link to comment Share on other sites More sharing options...
senito Posted February 12, 2007 at 12:18 PM Author Report Share #82190 Posted February 12, 2007 at 12:18 PM Para c++ dá uma olhadela aquiu http://www.codeguru.com/Cpp/W-D/dislog/splashscreens/article.php/c5029/ Link to comment Share on other sites More sharing options...
Procrastinator Posted February 9, 2009 at 04:59 PM Report Share #243292 Posted February 9, 2009 at 04:59 PM Impressão minha ou isto é ripado daqui -> http://www.codersource.net/csharp_splash_screen.aspx Link to comment Share on other sites More sharing options...
bsntuga Posted February 16, 2009 at 12:43 AM Report Share #244830 Posted February 16, 2009 at 12:43 AM ya, e copiado, mas ele nao disse q era o autor Link to comment Share on other sites More sharing options...
Procrastinator Posted February 16, 2009 at 12:48 AM Report Share #244832 Posted February 16, 2009 at 12:48 AM Aaa boa não da credito nenhum ao autor e fica-se na boa... Bonito Link to comment Share on other sites More sharing options...
djthyrax Posted February 16, 2009 at 01:38 AM Report Share #244837 Posted February 16, 2009 at 01:38 AM Acs, já viste a idade do post original? Era preferível enviares PM ao moderador da secção a pedir para identificar a fonte original como sendo esse site. Either way, já lá está. 🙂 Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum! Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now