Quiero cambiar la altura de un NSWindow barra de título.

Aquí están algunos ejemplos:
Cómo cambiar la altura de un NSWindow barra de título?

Y…

Cómo cambiar la altura de un NSWindow barra de título?

Podría utilizar un NSToolbar, pero el problema es que no puedo poner puntos de vista muy alto (Por ejemplo: no puedo poner el segmentedControl mayor que en la foto porque todavía queda la barra de título)
Cómo cambiar la altura de un NSWindow barra de título?

Si puedo eliminar la barra de título no puedo poner un NSToolbar y la ventana no es movible.

Tiene usted alguna idea?

OriginalEl autor Flocked | 2011-01-09

4 Comentarios

  1. 23

    Esto es mucho más fácil de lo que uno pensaría. Yo también fui en una misión para hacer algo similar para mi aplicación.

    Real de la Aplicación de la app Store:
    Cómo cambiar la altura de un NSWindow barra de título?

    Mi App de la app Store de look-alike:
    Cómo cambiar la altura de un NSWindow barra de título?

    Sin faltar el respeto a INAppStoreWindow, es una muy buena aplicación y sólido. El único empate de nuevo vi de él fue que había un montón de código de dibujo junto con codificados de configuración de la Barra de colores que Apple puede ajustar en cualquier momento.

    Así que aquí está cómo lo hice:

    A) Crear un estándar de la ventana con una Barra de Título, Cerrar, Minimizar, Sombra, Tamaño de Pantalla Completa de la Ventana Principal.
    Nota: Usted no necesita una textura de la ventana ni se debe establecer un título

    B) a continuación, agregar una barra de herramientas estándar con estos valores:

    • Icono Sólo
    • Visible en el Lanzamiento – EN
    • Personalizable – OFF
    • Separador – EN
    • De Tamaño Regular

    Quitar todos los Elementos de Barra de herramientas y añadir sólo estos en el siguiente orden

    NSSegmentControl (51 x 24) — | Espacio versátil | — NSSearchField (150 x 25)

    C) En la Vista de contenido directamente debajo de la barra de herramientas agregar un tamaño regular NSButton establecer como:

    • Limita – OFF
    • Transparente – OFF
    • Título –
    • Imagen –
    • Posición de Texto debajo del botón
    • Font – Sistema Pequeño De 11

    Ok, bastante fácil hasta ahora, ¿verdad?!

    En la Ventana Controlador o aplicación delegado….
    el programa de instalación de IBOutlet(s) a su NSButton(s)

    Nota: Recuerde que debe conectar su IBOutlet en el interface builder

    Aceptar no tener miedo a escribir un poco de código:

    En awakeFromNib o windowDidLoad….

    1. Obtener el contenido de las vistas’ superview (aka NSThemeView)
    2. Quitar el botón de su superView
    3. Establecer el marco de su botón
    4. Agregar el botón de regreso a la vista de tema

    Por lo que el código sería similar a este:

    NSView *themeView = [self.contentView superview];
    NSUInteger adj = 6;
    
    [self.btnFeatured removeFromSuperview];
    self.btnFeatured.frame = NSMakeRect( self.btnFeatured.frame.origin.x,
                                  self.window.frame.size.height - self.btnFeatured.frame.size.height - adj,
                                  self.btnFeatured.frame.size.width, self.btnFeatured.frame.size.height);
    [themeView addSubview:self.btnFeatured];

    Que es! Puede utilizar la toma de corriente para activar/desactivar el botón, la configuración de una imagen de la máscara cuando se selecciona, activar/desactivar la barra de herramientas o incluso ocultar todo y añadir un título de la ventana. Todo esto, sin preocuparse de si Apple cambia su Ventana estándar Titlebars.

    P. S. No privado de marcos fueron utilizados en esta publicación en absoluto!

    Esto funciona perfectamente, pero, ¿cómo puedo lograr que mediante Auto de Diseño?
    Básicamente, lo que hice fue desactivar diseño automático sólo para la ventana principal XIB de archivo, que contiene la vista de la barra de título. Cada otro punto de vista contenida en su propia XIB utilizar de diseño automático. Espero que esto ayude.
    Genial!!, Soy nuevo en Objective-C y no me había dado cuenta de que puedo usar el Auto de la opción de Diseño para cada archivo NIB.
    Bienvenido a Objective-C! Aunque de diseño automático reduce mucho en el dibujo de la curva, hay una curva de aprendizaje. Además no es totalmente cocido, lo que significa que usted va a encontrar las diferencias entre Lion y Mountain Lion, así como «indocumentados» problemas cuando se utiliza un NSTableView / NSScrollView. La mejor de las suertes…
    Esto no funciona cuando se realiza la ventana de pantalla completa.

    OriginalEl autor

  2. 4

    Que tendría a la subclase NSWindow y hacer un custom marco de la ventana de dibujo. No sólo se trata de una barra de título. Es sobre todo el marco de la ventana (así que usted puede, en realidad, poner cerrar/minimizar/botones de zoom en la parte inferior si así lo desea).

    Un buen inicio es en «El cacao con amor» sitio web.

    OriginalEl autor

  3. 1

    Hay un par de nuevas soluciones basadas en INAppStoreWindow y sin advertencia y mensaje de registro, para cualquier persona que quiere cambiar la altura de NStitlebar, cambiar la posición de luz de tráfico, añadir un elemento(por ejemplo, un NSbutton) en NStitlebar y cambiar su posición, por favor marque a continuación.

    WAYWindow:
    https://github.com/weAreYeah/WAYWindow

    NStitlebar_with_item:
    https://github.com/ZHANGneuro/NStitlebar_with_item

    Gracias por votar hasta

    OriginalEl autor

Dejar respuesta

Please enter your comment!
Please enter your name here