我已經創建了應用程序,用戶可以在運行時拖放控件。我使用我的ss
函數來使用二維數組對齊表格中的控件。我希望應用程序顯示/突出顯示控件放置在特定座標附近時的位置。在c中突出顯示動態控件的潛在位置#
struct IconPanel
{
public int left;
public int top;
}
static void ss(Control control)
{
int row, col, nearestCol = 0, nearestRow = 0, rowDist = 100, diff, colDist = 100;
for (row = 0; row < iconPanels.GetLength(0); row++)
{
for (col = 0; col < iconPanels.GetLength(1); col++)
{
diff = Math.Abs(control.Left - iconPanels[row, col].left);
if (diff < colDist)
{
colDist = diff;
nearestCol = col;
}
diff = Math.Abs(control.Top - iconPanels[row, col].top);
if (diff < rowDist)
{
rowDist = diff;
nearestRow = row;
}
}
}
control.Left = iconPanels[nearestRow, nearestCol].left;
control.Top = iconPanels[nearestRow, nearestCol].top;
}
我只想要執行ss函數後可能放置控件的空間。我知道使用iconPanels [nearestRow,nearestCol] .left,top放置控件的位置。但是我無法將該位置分配給矩形,因爲rectangle.left不能設置。如果我可以指定創建的矩形的位置,它將是完美的。 – user3201928
「矩形」是一種結構,並且簡單地將左側設置爲(?)用例如'新的矩形(位置,大小);' – TaW