2012-03-27 14 views
6

Estoy tratando de colocar un conjunto de botones para que estén anclados en la parte inferior derecha de la pantalla. Mi problema es que cada vez que cambio el tamaño de la pantalla, los botones no están anclados en la parte inferior derecha, sino que permanecen en su posición actual.QT - Coloque los botones en la parte inferior derecha

He colocado dos botones dentro de un diseño horizontal. Luego coloqué este diseño dentro de un Diseño de cuadrícula, que contiene un espaciador horizontal y vertical. Modifiqué la propiedad layoutSize de Grid Layout a SetMaximumSize.

¿Qué estoy haciendo incorrectamente, para poder hacer que mis botones estén anclados en la parte inferior derecha?

enter image description here

Respuesta

5

Usted tiene casi todo acaba aquí, pero es probable que se pasa por alto algo que es muy fácil pasar por alto la primera vez que empiece a usar Qt Designer.

Su diseño de cuadrícula se encuentra dentro de su widget con un tamaño y una posición fijos. También necesita ser administrado por un diseño. Si echas un vistazo al Inspector de Objetos en la esquina superior derecha (que contiene tu jerarquía) probablemente verás tu widget de nivel superior con un ícono rojo. Esto indica que no contiene ningún diseño. Tiene dos opciones para arreglar esto ...

  1. Haga que su disposición de cuadrícula existente se coloque en otro diseño principal (como un diseño vertical). Simplemente haga clic con el botón derecho en su widget de nivel superior en el Inspector de objetos -> Diseñar -> [Elija un tipo de diseño principal].
  2. Haga que su cuadrícula sea el diseño principal. Para hacer esto, deberá eliminar el diseño de la cuadrícula y hacer que sus elementos secundarios estén dispuestos exactamente como los tiene en esa imagen. A continuación, siga la opción anterior, haga clic con el botón derecho en el widget de nivel superior (o en el fondo en blanco) y elija Diseñar -> Cuadrícula. Esto insertará sus widgets en una cuadrícula con el mejor ajuste visual (que luego puede corregir si es necesario) y su cuadrícula será el diseño de nivel superior.
+0

Genial. Muchas gracias :) – Jon

1

Ese diseño de la red hará que la colocación de otros widgets bastante duro. Pruebe esto en su lugar:

  1. Agregue (de izquierda a derecha) el espaciador horizontal y los dos botones.
  2. Multiselect them all.
  3. Seleccione "Diseñar horizontalmente" (Ctrl-H) desde la barra de herramientas superior de Qt Designer (o Qt Creator) (¡no desde el cuadro de widgets de la izquierda!).
  4. Agregue espaciador vertical en la parte superior de los widgets anteriores.
  5. Seleccione la ventana principal haciendo clic en ella (ninguno de los widgets agregados está ahora seleccionado).
  6. Seleccione "Diseñar verticalmente" (Ctrl-L) desde la barra de herramientas superior.
  7. Hecho.
+2

¡Apuesto a que puedo hacerlo en 6 pasos! :-P – jdi

+1

Incluso dejé fuera el ??? y los pasos de ganancia. –

+0

Si tuviera que grabar un 7º paso, simplemente lo cambiaría a: "7. Haz un sándwich". (+1 para una referencia de SouthPark también) – jdi

0

Parece que lo está haciendo correctamente. Acaba de olvidarte de aplicar un diseño a tu widget central, ¿verdad? El diseño de Grid debe organizarse en su widget central. La forma más conveniente es eliminar el widget de diseño de cuadrícula y diseñar el widget central en una cuadrícula ;-)

Cuestiones relacionadas