您现在的位置是:主页 > news > 昆明网站建设锐网/seo推广专员工作内容

昆明网站建设锐网/seo推广专员工作内容

admin2025/4/27 20:53:39news

简介昆明网站建设锐网,seo推广专员工作内容,常州网站建设公司平台,怎么用indesign做网站设计Flags类型的枚举可以简化很多代码,例如如下需求,矩形的四条边,按照设定,可以只存在四条边中的任意条边。 使用普通的思路,就必须定义四条边所有的组合,添加一条边和减少一条边的代码都比较复杂&#xff0c…

昆明网站建设锐网,seo推广专员工作内容,常州网站建设公司平台,怎么用indesign做网站设计Flags类型的枚举可以简化很多代码,例如如下需求,矩形的四条边,按照设定,可以只存在四条边中的任意条边。 使用普通的思路,就必须定义四条边所有的组合,添加一条边和减少一条边的代码都比较复杂&#xff0c…

Flags类型的枚举可以简化很多代码,例如如下需求,矩形的四条边,按照设定,可以只存在四条边中的任意条边。

使用普通的思路,就必须定义四条边所有的组合,添加一条边和减少一条边的代码都比较复杂,但如果使用,Flags类型的枚举就很简单。

定义枚举

  [Flags]public enum CellBorderType{none = 0,Top = 1,Left = 2,Right = 4,Bottom = 8,/// <summary>/// 四条线都打印/// </summary>All = Top | Left | Right | Bottom}

判断是否存在某条边

 public static bool HasBorder(CellBorderType borderTypeToTest,CellBorderType borderType){           bool has = ((borderTypeToTest & borderType) != 0);// bool has = (borderTypeToTest & borderType) == borderType;//这种方法也可以return has;}  

移除某条边

 public static CellBorderType RemoveBorder(CellBorderType borderTypeToRemove, CellBorderType borderType){bool has = HasBorder(borderTypeToRemove, borderType);if(has)//必须先判断是否存在{borderTypeToRemove ^= borderType;// borderTypeToRemove -= borderType;//这种方法也可以}return borderTypeToRemove;}

添加某条边

 public static CellBorderType AddBorder(CellBorderType borderTypeToAdd, CellBorderType borderType){borderTypeToAdd = borderTypeToAdd | borderType;//bool has = HasBorder(borderTypeToAdd, borderType);//if (has)//不需要判断是否存在//{//    borderTypeToRemove -= borderType;//}return borderTypeToAdd;}

测试代码

 /*测试移除*/TestFlags.CellBorderType CellBorderType = TestFlags.CellBorderType.All;TestFlags.CellBorderType CellBorderType1 = TestFlags.RemoveBorder(CellBorderType, TestFlags.CellBorderType.Top);TestFlags.CellBorderType CellBorderType2 = TestFlags.CellBorderType.Left| TestFlags.CellBorderType.Right;TestFlags.CellBorderType CellBorderType22 = TestFlags.RemoveBorder(CellBorderType2, TestFlags.CellBorderType.Top);/*测试添加*/TestFlags.CellBorderType CellBorderType3 = TestFlags.CellBorderType.All;TestFlags.CellBorderType CellBorderType33 = TestFlags.AddBorder(CellBorderType3, TestFlags.CellBorderType.Top);TestFlags.CellBorderType CellBorderType4 = TestFlags.CellBorderType.Left | TestFlags.CellBorderType.Right;TestFlags.CellBorderType CellBorderType44 = TestFlags.AddBorder(CellBorderType4, TestFlags.CellBorderType.Top);/*测试是否存在*/TestFlags.CellBorderType CellBorderType5 = TestFlags.CellBorderType.All;bool has6 = TestFlags.HasBorder(CellBorderType5, TestFlags.CellBorderType.Top);TestFlags.CellBorderType CellBorderType7 = TestFlags.CellBorderType.Left | TestFlags.CellBorderType.Right;bool has8 = TestFlags.HasBorder(CellBorderType7, TestFlags.CellBorderType.Left | TestFlags.CellBorderType.Right);