PDA

Ver la Versión Completa : Modificar el ancho de un TMenu delphi7


jmbarrio
06-09-2022, 23:48:30
Buenas noches, al modificar el tamaño de la fuente de un TMenu en el evento OnDrawItem el ancho del TMenu no se escala, con lo que las letras del menu se quedan cortadas.
Como se puede modificar el ancho de un TMenu en delphi7?

Muchas gracias, un saludo.

duilioisola
07-09-2022, 08:14:04
¿Qué componente estás utilizando?

Yo tengo implementado en cada TMenuItem los eventos OnMeasureItem y OnDrawItem.

procedure TFMain.MeasureMenuItem(Sender: TObject; ACanvas: TCanvas; var Width, Height: integer);
begin
// Alarga 18 px si están asignadas las imágenes.
if TMenuItem(Sender).GetParentMenu.Images <> nil then
Width := Width + 18;
end;

jmbarrio
07-09-2022, 13:10:37
Muchas gracias, es un TMenuItem, no había caído en el evento measureItem

Lo pruebo y te digo.

jmbarrio
07-09-2022, 18:44:57
Buenas tardes,el ancho ya lo modifico, lo que no logro cambiar es el alto, por mucho que ponga height:=height + xxx siempre da el mismo alto
Me refiero al ancho de la primera linea del menú, la altura de los submenu si que la modifica.

Gracias, un saludo.