我的GUI为数据库脚本绘制了一个ERM。 参考数据库的内容,例如两个实体, 用线连接。 但所有这些线都是纵横交错的。 每条线越过另一条线。 所以我的问题是,我如何以专业的外观画出这些线条。 在这里你可以看到绘制这些线的类。
class GuiReferenceModel
{
int _xPos=0;
int _yPos=0;
GuiEntityModel _guiEM = null;
HelperClass _helperClass;
FieldModel _fm = null;
Pen _pen;
public GuiReferenceModel(FieldModel fm, GuiEntityModel guiEM)
{
_fm = fm;
_guiEM = guiEM;
_helperClass = new HelperClass();
_pen = new Pen(Color.HotPink, 5);
}
public void Draw(Graphics gc, List<GuiEntityModel> GuiEntitys)
{
_xPos=_guiEM.getXPos()+_guiEM.getWidth();
_yPos=_guiEM.getYPos()+(_guiEM.getHeight()/2);
foreach (GuiEntityModel gem in GuiEntitys)
{
if (gem.GetName() == _fm.ReferencedField)
{
gc.DrawLine(_pen, _xPos, _yPos, gem.getXPos(), (gem.getYPos()+gem.getHeight()/2));
}
}
}
}
感谢您的帮助:D