本文整理汇总了C#中IGraphics.DrawRoundedRect方法的典型用法代码示例。如果您正苦于以下问题:C# IGraphics.DrawRoundedRect方法的具体用法?C# IGraphics.DrawRoundedRect怎么用?C# IGraphics.DrawRoundedRect使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IGraphics
的用法示例。
在下文中一共展示了IGraphics.DrawRoundedRect方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Draw
public void Draw(IGraphics g)
{
if (Font != null) {
g.SetFont (Font);
}
g.SetColor (Colors.Gray);
var border = Frame;
border.Y += PaddingTop;
border.Height -= PaddingTop + PaddingBottom;
border.Inflate (-1, -1);
g.DrawRoundedRect (border, 5, 1);
var inner = border;
inner.Inflate (-2, -2);
if (Checked) {
g.FillRoundedRect (inner, 3);
g.SetColor (Colors.Black);
}
if (!string.IsNullOrEmpty (Title)) {
var fm = g.GetFontMetrics ();
var sw = fm.StringWidth (Title);
g.DrawString (Title, inner.X + (inner.Width - sw)/2, inner.Y + (inner.Height - fm.Height)/2);
}
}
示例2: Render
public void Render(IGraphics g, OpenGLTextureReference tex)
{
g.SetColor (Colors.White);
var x = tex.X + tex.ShapeOffset.X;
var y = tex.Y + tex.ShapeOffset.Y;
switch (ShapeType) {
case OpenGLShapeType.Line:
g.DrawLine (x, y, x + A, y + B, C);
break;
case OpenGLShapeType.Rect:
if (Fill) {
g.FillRect (x, y, A, B);
}
else {
g.DrawRect (x, y, A, B, C);
}
break;
case OpenGLShapeType.RoundedRect:
if (Fill) {
g.FillRoundedRect (x, y, A, B, C);
}
else {
g.DrawRoundedRect (x, y, A, B, C, D);
}
break;
case OpenGLShapeType.Oval:
if (Fill) {
g.FillOval (x, y, A, B);
}
else {
g.DrawOval (x, y, A, B, C);
}
break;
case OpenGLShapeType.Character:
g.SetFont (Font);
g.DrawString (Char.ToString (), x, y);
break;
case OpenGLShapeType.Polygon: {
var dx = x - Poly.Points[0].X;
var dy = y - Poly.Points[0].Y;
var dpoly = new Polygon ();
for (var i = 0; i < Poly.Points.Count; i++) {
dpoly.AddPoint (Poly.Points[i].X + dx, Poly.Points[i].Y + dy);
}
if (Fill) {
g.FillPolygon (dpoly);
}
else {
g.DrawPolygon (dpoly, A);
}
}
break;
case OpenGLShapeType.Arc:
if (Fill) {
g.FillArc (x, y, A, B, C);
}
else {
g.DrawArc (x, y, A, B, C, D);
}
break;
case OpenGLShapeType.Polyline: {
var dx = x - PolylinePoints[0].X;
var dy = y - PolylinePoints[0].Y;
g.BeginLines (true);
for (var i = 0; i < PolylineLength - 1; i++) {
g.DrawLine (
PolylinePoints[i].X + dx,
PolylinePoints[i].Y + dy,
PolylinePoints[i + 1].X + dx,
PolylinePoints[i + 1].Y + dy,
A);
}
g.EndLines ();
}
break;
default:
throw new NotSupportedException ();
}
}