刷新 FORM
DarkSpy 刚从 UNIX 和 DOS 下转到windows下编程,对于CBUILDER还不是很熟悉。
问一些 C BUILDER 的初级问题,不好意思。
问题是:显示一个FORM,TLABEL 在 FORM 上,然后搜索文件,这个中间,要将文件名字显示在这个LABEL 上,改怎么做?用 SetTextBuf 这些只能是等文件搜索完了才显示最后一个文件名在LABEL上,该怎么解决?基本上代码是这样的:
ScanForm->Show();
ScanForm->ScanFormLabel->SetTextBuf(Scan.ScanFile()/* 这是我自己写的返回char *的搜索函数*/);
还有如何将 String 转变为 char ?
谢谢各位。
问题点数:10、回复次数:8Top
1 楼BCB(天下三分明月夜,二分无赖是扬州)回复于 2001-01-22 20:34:00 得分 0
String--->char *
String s;
s.c_str()就是char *Top
2 楼BCB(天下三分明月夜,二分无赖是扬州)回复于 2001-01-22 20:41:00 得分 0
搜索函数要重编,一边搜索一边将文件名送Label1->Caption就行了 ;
Top
3 楼DarkSpy(DarkSpy)回复于 2001-01-25 09:56:00 得分 0
EMAIL通知怎么出问题了?
窗体没显示完就开始搜索函数了,等搜索完,窗体也正常了,LABEL上显示的是最后一个文件名,怎么办。。。
Top
4 楼Sandyyang(雨夜街头)回复于 2001-01-25 12:14:00 得分 0
ScanForm->Show();
ScanForm->ScanFormLabel->Caption=Scan.ScanFile();
不知你的ScanFile是造一个文件返回还是都找好再返回,
if(找一个就返回)
{
就按我写的办
}
else
{
改动ScanFile,在该函数参数中加入lable的指针,在函数中每找一
个文件就用一次 ScanFormLabel->Caption=找的文件名。
}
OK? 如有问题就找我,
我的oicq : 20726395 我正想从windows转到unix,我们可以互补哦
Top
5 楼Sandyyang(雨夜街头)回复于 2001-01-25 12:28:00 得分 10
不知你的搜索要不要花较多时间。
那样的话,对主线程的影响较大,即使你用控制转移(Application->ProcessMesage,或PeekMessage()),也是牵强的方法。你可以为查找建一个线程。window的多线程就像unix下
建子进程一样普遍。这样程序的结构会比较合理,高效。Top
6 楼DarkSpy(DarkSpy)回复于 2001-01-25 13:40:00 得分 0
我去看 HELP 先,有问题 QQ 上聊,不知道你什么时候上网Top
7 楼DarkSpy(DarkSpy)回复于 2001-01-25 17:17:00 得分 0
如何让一个 FORM 总是Show在前台?Top
8 楼DarkSpy(DarkSpy)回复于 2001-01-27 14:04:00 得分 0
okTop




