VS笔记(2)

1、

对于不熟悉VisualStudio 2008的初学者而言,会以为这是一种错误,其实只是项目默认的启动工程没有生成可执行文件而已。右击“Solution Explorer”里的“TestVTKInstall”工程,然后选择“Set as StartUp project”,再次F5即可。

2、代码规范:具有相同或类似的操作,尽量用数组、指针、向量、map存储对象,然后用for循环进行。

3、

Qt助手中找到StyleSheet的方法。


The marginborder-width, and padding properties all default to zero. In that case, all four rectangles (marginborderpadding, and content) coincide exactly.

youcan specify a background for the widget using the background-image property.By default, the background-image is drawn only for the area inside the border.This can be changed using the background-clip property.You can use background-repeat and background-origin tocontrol the repetition and origin of the background image.

4、Bug心得

Sidepanelmainpanel之间通过model通信,不要试图谁包含谁。

在最直接的原因处修改问题。

修改状态未恢复的问题思路:

1、  在状态需要修改处恢复,不要在change函数里面改,因为包含没有change的情况。也可以故意修改一下状态,确保进change函数

例:点击上一步并重新加图时,模式显示面板自动恢复到btn状态。

在确定图像更新处:

 VRDisplayModeeVRDisplayMode = NONE_Mode;

 m_pMipMprViewModel->GetVRDisplayMode( eVRDisplayMode );

 if(eVRDisplayMode == NONE_Mode)

 {

      m_pMipMprViewModel->SetMPRMIPVRSROPTYPE(VR_OPTYPE);

      m_pMipMprViewModel->SetVRDisplayMode(VR_Mode);

 }
      m_pMipMprViewModel->SetMPRMIPVRSROPTYPE(NONE_OPTYPE);

      m_pMipMprViewModel->SetVRDisplayMode(NONE_Mode);

确保进入

voidMipMprViewModelChanged();

5、 QMouseEvent *e获取的是window坐标,存到model里的点一般都是世界坐标系的点。

6、坐标系说明

命名如下:

window坐标,为Qt的屏幕坐标

display坐标,为vtk的display坐标

world坐标,为vtk的world坐标

在写转换函数时,应分清转换的坐标,如,displaytoworld,windowtodisplay

转换关系

1)window与display:

display.x=window.x

display.y=窗口大小-window.y

display.z=0

2)display与world:

用vtk转换

7、VS快捷键

Ctrl+z:撤销输入

Ctrl+k+f  对齐

Ctrl+k+c 注释

Ctrl+k+u 取消注释

猜你喜欢

转载自blog.csdn.net/zzhouzhou237/article/details/80447863