Form sizable senza titlebar

di il
5 risposte

Form sizable senza titlebar

Buongiorno

avrei bisogno di aprire una Form senza la titlebar ma che sia comunque sizable. 

Non devo solo togliere il controlbox=false, ma eliminare anche la titleBar (formborderstyle=none) e comunque la form deve poter essere sizable

Immagino si possa fare usando un codice Api, gentilmente lo potete postare

Grazie mille

5 Risposte

  • Re: Form sizable senza titlebar

    Fai qualche ricerca al posto di chIedere codice pronto.

    Parti da questa discussione  

    https://stackoverflow.com/questions/2575216/how-to-move-and-resize-a-form-without-a-border

    Dai un'occhiata attenta a tutta la discussione anche se è per c#… non cambia molto, fai le tue prove ese ne riparla

  • Re: Form sizable senza titlebar

    Sembra funzionare abbastanza bene.

    il cuore di tutto è 

    Public Sub New()
       InitializeComponent()
       Me.SetStyle(ControlStyles.ResizeRedraw, True) ' this is to avoid visual artifacts
    End Sub

    Private Const cGrip As Integer = 1 '16
    Private Const cCaption As Integer = 62

    Protected Overrides Sub WndProc(ByRef m As Message)
       If m.Msg = &H84 Then
           Dim pos As Point = New Point(m.LParam.ToInt32())
           pos = Me.PointToClient(pos)
           If pos.Y < cCaption Then
               m.Result = CType(2, IntPtr)
               Return
           End If

           If pos.X >= Me.ClientSize.Width - cGrip AndAlso pos.Y >= Me.ClientSize.Height - cGrip Then
               m.Result = CType(17, IntPtr)
               Return
           End If
       End If
       MyBase.WndProc(m)
    End Sub

  • Re: Form sizable senza titlebar

    Nella prima risposta, nel codice c'è 

    this.FormBorderStyle = FormBorderStyle.None;

    che è quello di cui parli. O no?

  • Re: Form sizable senza titlebar

    Ciao, ho modificato il post

    facendo un merge fra quello che mi hai inviato tu (Grazie Mille) e qualche modifica che spiegavano il funzionamento.

    Ora proverò a migliorarlo inserendo una specie di StatusTrip (la quale mi blocca il resize) con un Panel

    Grazie ancora

  • Re: Form sizable senza titlebar

    Ho provato con impostando la form con ismdicontainer=true e purtroppo non funziona

Devi accedere o registrarti per scrivere nel forum
5 risposte