请发表友善的回复…
发表回复
vcf_reader 2011-06-08
- 打赏
- 举报
消息响应
科学家 2011-06-08
- 打赏
- 举报
我也遇到过画表格的问题。实在麻烦。后来干脆做了个控件来解决的。我的那个控件记住的就不是线段了。我记录得是每个空白的框框。每个框框你用一个窗体类的实例来表示也行,用一个自制的rect类的实例来表示也可以。将每个实例存进vector中。这样做还可以实现单元格合并,或拆分。
操作时用户先用橡皮筋画一个矩形,矩形落定之后在矩形区域内点右键出现对话框询问m行n列,用户确定后,代码中将该矩形用嵌套循环计算出这m*n个矩形的四边---------这个不难。(只是记得有误差很讨厌。比如10个像素等分3份,必余1,这个1不能再分了,要么你悄悄的把那个外框矩形缩小1,要么扩大2,每份可获补1,要么把这个1分配给最后一份上,若分到最后一份,遇到分格数多时会很不均匀。)
分格成m行n列。用户可以划选相邻的一个或几个框框,合并,就是留下第一个,其余的销毁然后在吧第一个铺满余下的空白处........
不说了,这么多天,楼主现在是不是已经解决了?
操作时用户先用橡皮筋画一个矩形,矩形落定之后在矩形区域内点右键出现对话框询问m行n列,用户确定后,代码中将该矩形用嵌套循环计算出这m*n个矩形的四边---------这个不难。(只是记得有误差很讨厌。比如10个像素等分3份,必余1,这个1不能再分了,要么你悄悄的把那个外框矩形缩小1,要么扩大2,每份可获补1,要么把这个1分配给最后一份上,若分到最后一份,遇到分格数多时会很不均匀。)
分格成m行n列。用户可以划选相邻的一个或几个框框,合并,就是留下第一个,其余的销毁然后在吧第一个铺满余下的空白处........
不说了,这么多天,楼主现在是不是已经解决了?
faremn000 2011-06-03
- 打赏
- 举报
我试一试,先谢谢大家回答
evangelinelm 2011-06-02
- 打赏
- 举报
你可以参考一下那个橡皮筋效果的简单程序,看人家是怎么移动线条的。然后你再结合自己的已有表格,来移动已有的线。移动可以采用刷新,反绘等方法来实现。其实还是用控件最好。
faremn000 2011-06-02
- 打赏
- 举报
自己顶一下~
richblueh 2011-06-02
- 打赏
- 举报
我想了下,你看行不
表格就是一个大的单元格,也就说
单元格使用行和列组成,有了行和列就可以产生子单元格,
子单元格记录父单元格的行和列的引用,
子单元格也可以由自己的行和列,
子单元格的行和列,记录与父单元格的距离规则,
画图的时候,就遍历单元格的行和列
表格就是一个大的单元格,也就说
单元格使用行和列组成,有了行和列就可以产生子单元格,
子单元格记录父单元格的行和列的引用,
子单元格也可以由自己的行和列,
子单元格的行和列,记录与父单元格的距离规则,
画图的时候,就遍历单元格的行和列
april1yu 2011-06-02
- 打赏
- 举报
这个用opengl应该很好实现吧
faremn000 2011-05-27
- 打赏
- 举报
[Quote=引用 9 楼 wyx100 的回复:]
每条线段都是由两个点组成的,建一个结构,里面包含两个Point。或直接4个int也行啊。
[/Quote]
一条一条直线的去画,然后记录坐标吗
每条线段都是由两个点组成的,建一个结构,里面包含两个Point。或直接4个int也行啊。
[/Quote]
一条一条直线的去画,然后记录坐标吗
wyx100 2011-05-27
- 打赏
- 举报
每条线段都是由两个点组成的,建一个结构,里面包含两个Point。或直接4个int也行啊。
faremn000 2011-05-27
- 打赏
- 举报
[Quote=引用 7 楼 qiuchengw 的回复:]
画表格其实挺困难的.自己实现一个易用的表格感觉有点不现实啊.
还是找现成的控件吧.
[/Quote]
我现在是想在一个画图软件上画出一个表格,用控件不太美观 - -
画表格其实挺困难的.自己实现一个易用的表格感觉有点不现实啊.
还是找现成的控件吧.
[/Quote]
我现在是想在一个画图软件上画出一个表格,用控件不太美观 - -
faremn000 2011-05-26
- 打赏
- 举报
自己顶一下吧~
qiuchengw 2011-05-26
- 打赏
- 举报
画表格其实挺困难的.自己实现一个易用的表格感觉有点不现实啊.
还是找现成的控件吧.
还是找现成的控件吧.
科学家 2011-05-25
- 打赏
- 举报
每条线段都是由两个点组成的,建一个结构,里面包含两个Point。或直接4个int也行啊。
faremn000 2011-05-23
- 打赏
- 举报
[Quote=引用 1 楼 wangyutao0232000 的回复:]
mfc GDI
[/Quote]
具体怎么画呢 ?想了挺长时间,不知道如何画,只能画出固定大小的表格~
mfc GDI
[/Quote]
具体怎么画呢 ?想了挺长时间,不知道如何画,只能画出固定大小的表格~
海盗医生 2011-05-23
- 打赏
- 举报
mfc GDI
faremn000 2011-05-23
- 打赏
- 举报
[Quote=引用 3 楼 thomtadie 的回复:]
楼主不知掉如何移动线段??
建议,将所有横线,竖线记住,在mousemove事件里判断,当前鼠标是否在某一线段上。在的话则改变鼠标形状,并在按下鼠标时记下那条线段。移动时,现生成一条临时线段来表示改线段跟着鼠标移动。鼠标落下后将临时线段的位置赋给被点中的线段即可。
纯属建议,我认为能实现。不过会麻烦点
[/Quote]
如何记住横竖线??能否详细点,谢谢。
楼主不知掉如何移动线段??
建议,将所有横线,竖线记住,在mousemove事件里判断,当前鼠标是否在某一线段上。在的话则改变鼠标形状,并在按下鼠标时记下那条线段。移动时,现生成一条临时线段来表示改线段跟着鼠标移动。鼠标落下后将临时线段的位置赋给被点中的线段即可。
纯属建议,我认为能实现。不过会麻烦点
[/Quote]
如何记住横竖线??能否详细点,谢谢。
科学家 2011-05-23
- 打赏
- 举报
楼主不知掉如何移动线段??
建议,将所有横线,竖线记住,在mousemove事件里判断,当前鼠标是否在某一线段上。在的话则改变鼠标形状,并在按下鼠标时记下那条线段。移动时,现生成一条临时线段来表示改线段跟着鼠标移动。鼠标落下后将临时线段的位置赋给被点中的线段即可。
纯属建议,我认为能实现。不过会麻烦点
建议,将所有横线,竖线记住,在mousemove事件里判断,当前鼠标是否在某一线段上。在的话则改变鼠标形状,并在按下鼠标时记下那条线段。移动时,现生成一条临时线段来表示改线段跟着鼠标移动。鼠标落下后将临时线段的位置赋给被点中的线段即可。
纯属建议,我认为能实现。不过会麻烦点