主题:本人可以解答VC++方面的问题,有问题请进来。。。
xyjs2006
[专家分:820] 发布于 2007-01-18 11:36:00
欢迎大家在这里提问。但如果没有及时回复,请见谅。。。
另:请将问题、现象表述清楚,否则恕无法解答。
声明:本人主要提供解决方案,具体作业和代码请自行处理,谢谢。
------2007年5月14日发:
对不起,大家,近来工作繁忙,对于大家的提问没有及时解答深感抱歉。呵呵。
另:本人长期承接VC++项目(至少2000RMB以上项目),有意发邮件(在个人资料里,邮件只接受外包项目),谢谢!
呵呵,祝大家工作学习顺利!
------2008年1月18日发:
呵呵~~~这帖子发了一周年了~~~很感谢大家的支持,点击率和回帖数都是这个版面几乎最高了,呵呵~~~~~不过本人一直都比较忙,没有回答大家的问题,请见谅~~呵呵~~~
欢迎大家继续支持~~~~
最后更新于:2008-01-18 20:44:00
回复列表 (共581个回复)
31 楼
baorui [专家分:0] 发布于 2007-01-19 20:49:00
文件夹路径为:d:\leida\2006年6月8号
其中的文件为:PTB20060608000.999(共几百个)
要求:
通过比较此类文件的创建时间,找出最新的文件,并读取文件名在editbox中显示(m_leida)
谢谢!!!
代码越详细越好。
32 楼
xyjs2006 [专家分:820] 发布于 2007-01-19 21:36:00
baorui
文件夹路径为:d:\leida\2006年6月8号
其中的文件为:PTB20060608000.999(共几百个)
要求:
通过比较此类文件的创建时间,找出最新的文件,并读取文件名在editbox中显示(m_leida)
谢谢!!!
代码越详细越好。
---------------------------------
CFileFind ff;
BOOL res = ff.FindFile("d:\\leida\\2006年6月8号\\")
while(res)
{
res = ff.FindNextFile();
//然后调用ff.GetStatus获得文件时间(为CTime对象),再编写时间比较的代
//码,不过CTime对象可以直接用<>比较
}
ff.Close();
具体代码需要你自己做
33 楼
tgl1983 [专家分:0] 发布于 2007-01-19 23:05:00
求助:控件的初始化!
CRetrySaveDlg::CRetrySaveDlg(CWnd* pParent /*=NULL*/)
: CDialog(CRetrySaveDlg::IDD, pParent)
{
for(int i =0;i <6;i++){
dt[i].comment = "comment";
dt[i].x = 0;
dt[i].y = 0;
dt[i].z = 0;
dt[i].r = 0;
}
pos=0;
//{{AFX_DATA_INIT(CRetrySaveDlg)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
void CRetrySaveDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//用这循环语句初始化30个编辑框出现致命错误,有些机上可以,有些机上不行,是不是少什么库啊!
for(int i= 0;i<6;i++){
DDX_Text(pDX, [color=FF0000]IDC_EDIT1+i*5[/color],dt[i+pos].comment);
DDX_Text(pDX, [color=FF0000]IDC_EDIT2+i*5[/color],dt[i+pos].x);
DDX_Text(pDX, [color=FF0000]IDC_EDIT3+i*5[/color],dt[i+pos].y);
DDX_Text(pDX, [color=FF0000]IDC_EDIT4+i*5[/color],dt[i+pos].z);
DDX_Text(pDX, [color=FF0000]IDC_EDIT5+i*5[/color],dt[i+pos].r);
}
//{{AFX_DATA_MAP(CRetrySaveDlg)
// NOTE: the ClassWizard will add DDX and DDV calls here
//}}AFX_DATA_MAP
}
34 楼
xyjs2006 [专家分:820] 发布于 2007-01-19 23:19:00
tgl1983
求助:控件的初始化!
-------------------------------
DDX_Text(pDX, IDC_EDIT1+i*5,dt[i+pos].comment);
DDX_Text(pDX, IDC_EDIT2+i*5,dt[i+pos].x);
DDX_Text(pDX, IDC_EDIT3+i*5,dt[i+pos].y);
DDX_Text(pDX, IDC_EDIT4+i*5,dt[i+pos].z);
DDX_Text(pDX, IDC_EDIT5+i*5,dt[i+pos].r)
有问题,循环不对,有重复
35 楼
lgstudyvc [专家分:680] 发布于 2007-01-20 08:48:00
这样的绘图机制,gdi满足不了,想打听点别的途径,你知道的忒多。
36 楼
InitInstance [专家分:8720] 发布于 2007-01-20 11:14:00
楼主好人,我的问题有点像lgstudyvc兄的,但没那么复杂,不知道楼主能否为俺解决?
问题如下:
我绘制的边框总是闪烁的,请问怎么样才能做到当伸缩窗口大小时,边框能平滑的自绘?我发现人家做的边框没有闪烁现象啊,都能平滑的绘制。我是用StretchBlt帖图来自绘边框的,边框宽度小时尚看不出闪烁,但当我增大边框时(比如8个像素大小)闪烁就明显了,希望能给我解答一下,感激不尽。
37 楼
xyjs2006 [专家分:820] 发布于 2007-01-20 14:30:00
lgstudyvc:
InitInstance:
对于复杂的绘图,需要用二次缓存技术,使用CDC::BitBlt函数现在内存中绘制,再帖上屏幕,就不会有闪烁了。或者使用DirectDraw技术,具体请查看相关资料。
38 楼
InitInstance [专家分:8720] 发布于 2007-01-20 14:41:00
楼主,我发我的程序给你,你看看,我对于我这样画出来的界面不满意,至于你说双缓冲,我帖图都是靠从一个内存DC来copy上去的,没什么两样,不知道你能否留下邮箱,我发给你看看,我的是:liqisong611@yahoo.com.cn 代码并不多。
39 楼
xyjs2006 [专家分:820] 发布于 2007-01-20 14:48:00
InitInstance:
可以,但请发可以直接编译运行的工程
40 楼
InitInstance [专家分:8720] 发布于 2007-01-20 14:52:00
我刚才发过去了,是VC6.0的工程,SDK写的代码,很容易看的,那里看不清楚,可以告知我,我今天一直在线,感谢你帮忙。
我来回复