本文整理汇总了C#中Gdk.Rectangle.RightInside方法的典型用法代码示例。如果您正苦于以下问题:C# Rectangle.RightInside方法的具体用法?C# Rectangle.RightInside怎么用?C# Rectangle.RightInside使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Gdk.Rectangle
的用法示例。
在下文中一共展示了Rectangle.RightInside方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: OnSizeAllocated
protected override void OnSizeAllocated (Rectangle allocation)
{
base.OnSizeAllocated (allocation);
int vwidth = vScrollBar.Visible ? vScrollBar.Requisition.Width : 0;
int hheight = hScrollBar.Visible ? hScrollBar.Requisition.Height : 0;
var childRectangle = new Rectangle (allocation.X + 1, allocation.Y + 1, allocation.Width - vwidth - 2, allocation.Height - hheight - 2);
if (Child != null)
Child.SizeAllocate (childRectangle);
if (vScrollBar.Visible) {
int vChildTopHeight = -1;
foreach (var child in children.Where (child => child.ChildPosition == ChildPosition.Top)) {
child.Child.SizeAllocate (new Rectangle (childRectangle.RightInside (), childRectangle.Y + vChildTopHeight, allocation.Width - vwidth, child.Child.Requisition.Height));
vChildTopHeight += child.Child.Requisition.Height;
}
int v = vScrollBar is Scrollbar && hScrollBar.Visible ? hScrollBar.Requisition.Height : 0;
vScrollBar.SizeAllocate (new Rectangle (childRectangle.X + childRectangle.Width + 1, childRectangle.Y + vChildTopHeight, vwidth, Allocation.Height - v - vChildTopHeight - 1));
vAdjustment.Value = System.Math.Max (System.Math.Min (vAdjustment.Upper - vAdjustment.PageSize, vAdjustment.Value), vAdjustment.Lower);
}
if (hScrollBar.Visible) {
int v = vScrollBar.Visible ? vScrollBar.Requisition.Width : 0;
hScrollBar.SizeAllocate (new Rectangle (allocation.X, childRectangle.Y + childRectangle.Height + 1, allocation.Width - v, hheight));
hScrollBar.Value = System.Math.Max (System.Math.Min (hAdjustment.Upper - hAdjustment.PageSize, hScrollBar.Value), hAdjustment.Lower);
}
}