当文本为粗体和斜体时。我试图找出它是不是斜体?但是我失败了。
if (txtText.Text.Font.Style == FontStyle.Italic)
txtText.Font = new Font(txtText.Font, txtText.Font.Style ^ FontStyle.Italic);
。。
这样子
if (txtText.Text.Font.Style == FontStyle.Bold)
txtText.Font = new Font(txtText.Font, txtText.Font.Style ^ FontStyle.Italic);
我只知道文本是否为粗体。
您不能像这样检查相等性以检查是否设置了特定位。
要检查该FontStyle.Italic
位是否设置,请执行以下操作:
//True if italic is set
if ((textText.Text.Font.Style & FontStyle.Italic) != 0)
之所以可行,是因为FontStyle.Italic
结果中除for之外的每个位都为0,如果当前样式中的该位为0,则该位为0。因此,如果设置了当前样式,则结果将为非零,如果未设置,则结果将为零。
还要注意,因为您在它下面使用XOR,所以您始终将仅切换当前斜体设置,而不是显式设置/取消设置它。因此,您甚至不需要检查。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句