Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [VB.NET] Form di Avvio invisibile

    Salve a tutti, è tutto il giorno che cerco di realizzare qualcosa del genere:

    Volevo una form che partisse come icona sulla taskbar vicino all'orologio di windows, e fornisse il classico menù di "Espandi", "Esci"...come in un classico antivirus.

    Ho risolto il 90% del problema, ovviamente la complicazine è nel rendere invisibile la Form di avvio.
    Sono riuscito a renderla "Hide", ma premendo i tasti Alt+Tab compare ovviamente tra le finestre e la cosa mi secca.

    Ho provato allora a modificare il progetto spuntando la casella "Attiva Framework Applicazione", ed ho avviato il progetto da un Sub contenuta in un modulo:

    Module Module1

    Public Sub Main()
    Dim F1 As Form = New FormMain
    F1.ShowDialog()
    End Sub

    End Module

    Però a questo punto, ogni volta che nella form F1 premo un pulsante che renda la form invisibile od hide, ottengo l'uscita dal showdialog e la conseguente uscita dal modulo...mi serve un suggerimento...

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    53
    Una finestra Hidden a me non compare con Alt+Tab.

  3. #3
    Originariamente inviato da Janx
    Una finestra Hidden a me non compare con Alt+Tab.
    Ho ricontrollato e ti assicuro che a me compare, lavoro con visual studio 2008, Framework 2.0 su sistema operativo Vista Ultimate, non so se può dipendere dal fatto che la form nascosta in questo caso, sia anche l'unica form del progetto...

    Non esiste un modo per realizzare una sub che non esca (esattamente come una form), a meno che non ci sia una chiamata "exit"?

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    53
    Non ho modo di provarlo su Vista.
    Io sto sviluppando su XP, ma se hai pazienza, stasera farò una prova a casa, su Windows 7.

  5. #5

  6. #6
    albgen grazie per la segnalazione, ovviamente ShowInTaskbar era già impostata su FALSE, ma mancava quest'altro attributo

    this.FormBorderStyle = FormBorderStyle.SizableToolWindow


    A titolo informativo vi spiego velocemente come ho nascosto la FormAvvio:

    Ho creato una classe:


    Public Class myFormLibrary
    Public Shared Form1 As Form
    End Class
    La form di avvio contiene il seguente codice:

    Private Sub FormAvvio_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    myFormLibrary.Form1 = Me
    myFormLibrary.Form1.Hide()
    myFormLibrary.Form1.Visible = False
    End Sub
    In questo modo la form comparirà nascosta, vi confermo che il metodo non mi piace, dato che mi costringe ad utilizzare una classe esterna per fare il lavoro che dovrebbe fare la mia form da sola...ma così il risultato esiste.
    Se qualcuno ha metodi migliori, gliene sarei grato, amo molto la coerenza nel codice.

    Grazie a tutti per i consigli

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.