24小时热门版块排行榜    

Znn3bq.jpeg
汕头大学海洋科学接受调剂
查看: 1334  |  回复: 7
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

qiaoyusun

铁虫 (小有名气)

[求助] MFC里怎么给主窗口加滚动条?

图像处理的程序一般都是多窗口的模式,现在子窗口里的滚动条是有的,但是发现当打开的子窗口很多的时候,主窗口就不够大了,所以想加个滚动条,但是不知道怎么操作。如果有高手肯不吝赐教烦请稍微详细一些,比如在哪个类哪个函数里添加什么语句。多谢,多谢!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jjdg

版主 (知名作家)

优秀版主

【答案】应助回帖

qiaoyusun(金币+10): 2011-08-06 22:07:56
引用回帖:
6楼: Originally posted by qiaoyusun at 2011-08-03 13:17:52:
MainFrm的PreCreateWindow里设了cs的大小,主窗口确实会跟着改变。不过如果尺寸设大了超出了显示器的尺寸就看不到边了,设小了也没见有滚动条出现。View的InitialUpdate里的尺寸好像是管子窗口的。

从你的代码来看,应该是你的sizeTotal太大。cs和cy分别为滚动窗口的水平、垂直分量,表明 窗口的水平、垂直方向尺寸小于其指定像素单位时将出现水平方向滚动条和垂直方向滚动条。通过修改滚动尺寸, 可改变出现滚动条的最小窗口。也就是说,你现在指定的是2000*2000像素的尺寸。一般显示器的分辨率可以达到这个尺寸?
VC++中使用CscrollView代替Cview类即可实现滚动窗口。此时,系统生成OnInitialUpdate()成员函数:
void CmyscrollView::OnInitialUpdat()
{
CscrollView::OnIntialUpdate();
Csize sizeTotal;
SizeTotal.cs=sizeToal.cy=100;
SetScrollSizes(MM-TEXT,sizeTotal);
}

这个例子里面,cs和cy分别为滚动窗口的水平、垂直分量,表明窗口的水平、垂直方向尺寸小于100像素单位时将出现水平方向滚动条和垂直方向滚动条。通过修改滚动尺寸,可改变出现滚动条的最小窗口。例如,若“sizeTotal.cx=600;sizeTotal.cy=800;”,则当窗口尺寸小于600*800时,就会出现滚动条。
努力学习!以正当途径!获得需要的知识!
7楼2011-08-04 12:58:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 8 个回答

yalefield

金虫 (文坛精英)

老汉一枚

【答案】应助回帖

qiaoyusun(金币+5): 就是技术学得不够好啊,我知道子窗口是在initialupdate里设置大小的,但是主窗口不太会。 2011-08-02 21:05:42
qiaoyusun(金币+5): 这个设置我也有,不管用啊 2011-08-03 13:11:31
MFC中,窗口的滚动条是“自动”出现的,而不必自己添加。
但前提是您要选用哪种CView的继承类。
您要选用CScollView,那么,在InitialUpdate函数中,就可以设置窗口的大小。
那么,运行的时候,如果窗口的尺寸小于当初的设置,那么滚动条就自动出现了。

建议:认真看看《Visual C++技术内幕》
2楼2011-08-02 16:07:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sudo

木虫 (正式写手)


jjdg(金币+1): 感谢参与 2011-08-02 22:31:22
主窗口用的是CScrollView还是CScrollDialog?

前者可以参考http://blog.csdn.net/keyouan2008/article/details/5820602

后者可以参考http://blog.csdn.net/liang_lq/article/details/6224888
3楼2011-08-02 16:11:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qiaoyusun

铁虫 (小有名气)

引用回帖:
2楼: Originally posted by yalefield at 2011-08-02 16:07:06:
MFC中,窗口的滚动条是“自动”出现的,而不必自己添加。
但前提是您要选用哪种CView的继承类。
您要选用CScollView,那么,在InitialUpdate函数中,就可以设置窗口的大小。
那么,运行的时候,如果窗口的尺寸 ...

选的是CScollView类,InitialUpdate函数里也有设窗口的大小,但是运行的时候窗口的尺寸是变了,滚动条没有唉。
4楼2011-08-02 22:35:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 材料相关专业344求调剂双非工科学校或课题组 +17 hualkop 2026-04-12 18/900 2026-04-13 22:42 by pies112
[基金申请] 2026 WR青拔 +3 liuchb715 2026-04-09 6/300 2026-04-13 18:40 by liuchb715
[考研] 材料复试求调剂 +24 xhhdjdjsjks 2026-04-09 24/1200 2026-04-13 15:49 by 幸免 ..
[材料工程] 材料调剂推荐 +9 蛋糕x2 2026-04-07 9/450 2026-04-13 09:07 by lhj2009
[考研] 211本科材料化工求调剂 +17 YHLAH 2026-04-11 20/1000 2026-04-13 08:46 by Sammy2
[考研] 求调剂288 +7 ioodiiij 2026-04-10 9/450 2026-04-13 08:33 by Hayaay
[考研] 2本,初试303,0860求调剂 +6 floriea 2026-04-12 8/400 2026-04-12 18:13 by zhouxiaoyu
[考研] 299求调剂 +8 ZVVZ13 2026-04-08 8/400 2026-04-12 00:40 by 蓝云思雨
[考研] 0860004 求调剂 309分 +9 Yin DY 2026-04-08 9/450 2026-04-11 22:55 by dongdian1
[考研] 调剂 +6 青灯不负 2026-04-09 6/300 2026-04-11 20:35 by dongdian1
[考研] 296求调剂 +14 汪!?! 2026-04-08 15/750 2026-04-11 20:28 by dongdian1
[考研] 调剂 +5 文道星台 2026-04-11 5/250 2026-04-11 15:01 by 凯凯要变帅
[考研] 机械专硕270求调剂,接受跨专业 +12 老师看看我吧aba 2026-04-09 14/700 2026-04-11 10:21 by laoshidan
[考研] 342电子信息专硕求调剂 +9 你让我怎么荔枝 2026-04-10 10/500 2026-04-11 08:33 by zhq0425
[考研] 计算机类求调剂,22408-274分 +7 上岸de小虫 2026-04-09 8/400 2026-04-10 19:56 by fxue1114
[考研] 282,电气工程专业,求调剂,不挑专业 +9 jggshjkkm 2026-04-10 9/450 2026-04-10 14:55 by 逆水乘风
[考研] 本科西工大 0856 324求调剂 +10 wysyjs25 2026-04-09 11/550 2026-04-10 08:37 by 5268321
[考研] 353求调剂 +8 晴空万里air 2026-04-07 8/400 2026-04-09 00:18 by GouQ
[考研] 277、学硕,求调剂 数一104, +11 瓶子PZ 2026-04-07 12/600 2026-04-07 23:30 by 一只好果子?
[考研] 求调剂 +11 wwwwabcde 2026-04-07 11/550 2026-04-07 23:16 by JourneyLucky
信息提示
请填处理意见