2012-07-21 18 views

Respuesta

11

XFontStyle es un tipo enum. Puede usar lógica bit a bit para combinar valores.

const XFontStyle ItalicUnderline = XFontStyle.Italic | XFontStyle.Underline ; 

const XFontStyle BoldItalicUnderline = XFontStyle.Bold | XFontStyle.Italic | XFontStyle.Underline ; 
+0

Me parece extraño (para mí) usar O en lugar de AND, pero funciona, gracias. –

+0

@Henk: la lógica bit a bit no está disponible para todas las enumeraciones. Se requiere el atributo Flags en la definición de la enumeración (que está bien para XFontStyle) – Koen

+0

@BernhardHofmann: No confunda la lógica bit a bit con lógica booleana. Cada bit en el valor tiene un significado diferente. El 1er bit define negrita, el 2do bit define cursiva, etc. El '|' (OR bit a bit) combina valores aplicando el operador a cada bit del mismo índice y si desea combinar valores binarios "1000" y "0100", necesita usar O para obtener "1100". Bitwise AND (&) devolverá "0000". – Koen

Cuestiones relacionadas