首页 / 浏览问题 / 组件GIS / 问题详情
vs2012+qt5.2点击图层崩溃
17EXP 2017年08月09日
两张地图,确认都已可以打开。点击一张地图的图层打开另一张地图,怎么操作。

我在void QMapControl::mouseReleaseEvent(QMouseEvent *event)写判断语句

UGLayer *ugPointLay = m_pMapEditorWnd->m_mapWnd.m_Map.m_Layers.GetLayer(_U("New_Point"));

UGSelection *uPointSelect = ugPointLay->GetSelection();
 int iselectpSize = uPointSelect->GetSize();

if(iselectpSize >0) //这里判断点击了,

然后...就在ondraw崩溃了。只是判断语句怎么会崩溃的?那我应该到哪里去写判断语句那?

1个回答

你打个断点跟踪调试一下,看看 你的iselectpSize 是多少,是不是null,写代码你不能只看现象,要找原因。
4,620EXP 2017年08月09日
可能我写的不是很清楚。

if(iselectpSize >0) //这里判断点击了,

然后...就在ondraw崩溃了。 ondraw的位置是  void QMapControl::paintEvent(QPaintEvent *event)函数,跟是否null没有关系。是绘图崩溃了。不知道为什么切换地图后,绘图就出现问题。无法进行绘制了。似乎是图层无法进行点击操作或者是地图不可以切换。

跟代码本身无关。哪怕没有if(iselectpSize >0) 这句,一样是崩溃。
...