Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: juanedwin en 26 Noviembre 2021, 16:56 pm



Título: Como hacer que la barra de menus este en la barra del titulo
Publicado por: juanedwin en 26 Noviembre 2021, 16:56 pm
saludos
Quisiera lograr que mi aplicacion se vea como la de visual studio 2019, es decir la barra de menus este en la barra de titulos y cosas mas ahi...
saludos


Título: Re: Como hacer que la barra de menus este en la barra del titulo
Publicado por: Mohicano en 6 Diciembre 2021, 15:49 pm
El framework comercial de Telerik, tanto para WinForms como para WPF provee un tema visual con apariencia de Visual Studio 2019. Probablemente haya alternativas gratuitas y open source de un tema con apariencia de Visual Studio 2019, al menos para WPF, sería cosa de buscarlo.

Pero lo de colocar la barra de menues o toolstrip en la barra de título es otro cantar...

Para WindowsForms hay un par de formas, la primera y más sencilla sería simular una barra de título, es decir primero ocultas por completo la barra de título y los bordes del form ('Form.FormBorderStyle = None') y luego creas y añades un botón de cerrar, minimizar y etc en la parte superior del area cliente de tu form.

La segunda y más sofisticada forma de hacerlo sería extendiendo la composición de la barra de título al area cliente del form, entre otras cosas:

Cita de: https://social.msdn.microsoft.com/Forums/vstudio/en-US/392c9625-8df2-4ffa-899b-380d01241076/toolbar-in-the-form-titlebar?forum=vbgeneral
(https://social.msdn.microsoft.com/Forums/getfile/903718)

Este ejemplo (la respuesta aceptada) no lo he probado pero parece cumplir dicho cometido:

https://social.msdn.microsoft.com/Forums/vstudio/en-US/349d5d86-3b59-4116-9c5b-f5240f1bed4d/how-to-add-a-control-to-the-non-client-area-of-a-custom-form?forum=winforms

Puede que estas alternativas también te sirvan:

https://stackoverflow.com/questions/25070842/extend-non-client-area-on-form-with-custom-drawn-titlebar
https://www.codeproject.com/Articles/93959/WinForm-Extended


Título: Re: Como hacer que la barra de menus este en la barra del titulo
Publicado por: juanedwin en 7 Diciembre 2021, 02:25 am
gracias, uso la opcion de borrar el titulo con NONE y de ahi ya lo metos lo que deseo en un panel... pero las demas opciones estan realmente interesantes.... gracias


Título: Re: Como hacer que la barra de menus este en la barra del titulo
Publicado por: Mohicano en 7 Diciembre 2021, 05:23 am
Imagino que si lo haces así, tarde o temprano tendrás la necesidad de mover el form sin bordes arrastrando el ratón, así que por si acaso te sirve te dejo una solución para eso:

Cita de: https://stackoverflow.com/a/64698815/1248295
Código:
Dim InitialMouseDownLocation As Point

Private Sub Panel1_MouseDown(sender As Object, e As MouseEventArgs) Handles Panel1.MouseDown
    If e.Button = MouseButtons.Left Then
        InitialMouseDownLocation = e.Location
        Cursor.Current = Cursors.NoMove2D
    End If
End Sub

Private Sub Panel1_MouseMove(sender As Object, e As MouseEventArgs) Handles Panel1.MouseMove
    If e.Button = MouseButtons.Left Then
        Location = New Point(Location.X - InitialMouseDownLocation.X + e.X, Location.Y - InitialMouseDownLocation.Y + e.Y)
    End If
End Sub

Private Sub Panel1_MouseUp(sender As Object, e As MouseEventArgs) Handles Panel1.MouseUp
    Cursor.Current = Cursors.Default
End Sub


PD: Donde pone: 'Handles Panel1.MouseDown', 'Handles Panel1.MouseMove' y 'Handles Panel1.MouseUp' puedes añadir a la derecha de estos separados por una coma el nombre del form y de todos los controles que quieras que sirvan para arrastrar el form.


Título: Re: Como hacer que la barra de menus este en la barra del titulo
Publicado por: juanedwin en 7 Diciembre 2021, 16:15 pm
si, funciona, y mueve los controles dentro del form, ese Location solo, asume la del form .... gracias
PD: todo OK, pregunta y como puedo sacar ese menu de sistema que trae el formulario al presionas Alt+Tab :(


Título: Re: Como hacer que la barra de menus este en la barra del titulo
Publicado por: Mohicano en 7 Diciembre 2021, 19:52 pm
PD: todo OK, pregunta y como puedo sacar ese menu de sistema que trae el formulario al presionas Alt+Tab :(

no te entendí bien que es lo que pasa con el menú ALT+TAB, pero de todas formas es mejor si creas un nuevo hilo para una nueva consulta.