妖怪问题,DELPHI过程中代码不执行,只有设置断点后编译才执行. 发现一个奇怪现象,DELPHI7下编写的程序中有些过程中代码不执行,每次编译都没有问题,就是不执行.只有设置断点后编译才执行. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 本帖最后由 tjianliang 于 2010-05-28 09:44:24 编辑 procedure TFmBSP.RzBitBtn2Click(Sender: TObject);var ExpClass:TDBGridEhExportClass; Ext, sSave:String; SaveDialog: TSaveDialog; begin SaveDialog:= TSaveDialog.Create(Nil); // SaveDialog.FileName:= Form.Caption; SaveDialog.Filter:='Text files (*.txt)|*.TXT|Comma separated values (*.csv)|*.CSV|HTML file (*.htm)|*.HTM|Rich Text Format (*.rtf)|*.RTF|Microsoft Excel Workbook (*.xls)|*.XLS'; sSave := Trim(ExtractFilePath(Application.ExeName)) + '导出数据'; if not DirectoryExists(sSave) then begin if not CreateDir(sSave) then begin raise Exception.Create('不能新建目录,请手工新建这目录。' + #13 + sSave); end; end; SaveDialog.InitialDir:= sSave; if SaveDialog.Execute then begin case SaveDialog.FilterIndex of 1: begin ExpClass := TDBGridEhExportAsText; Ext := 'txt'; end; 2: begin ExpClass := TDBGridEhExportAsCSV; Ext := 'csv'; end; 3: begin ExpClass := TDBGridEhExportAsHTML; Ext := 'htm'; end; 4: begin ExpClass := TDBGridEhExportAsRTF; Ext := 'rtf'; end; 5: begin ExpClass := TDBGridEhExportAsXLS; Ext := 'xls'; end; else ExpClass := nil; Ext := ''; end; if ExpClass <> nil then begin if UpperCase(Copy(SaveDialog.FileName,Length(SaveDialog.FileName)-2,3)) <> UpperCase(Ext) then SaveDialog.FileName := SaveDialog.FileName + '.' + Ext; SaveDBGridEhToExportFile(ExpClass,dbgAirPriceFile,SaveDialog.FileName,not dbgAirPriceFile.CheckCopyAction); Application.MessageBox('数据成功导出!','信息',64); end; end;这个是无效代码? 说到 DBGridEh,忘记是 TDBGridEhExportAsCSV 还是 TDBGridEhExportAsRTF导出时 字段间的分隔符有点问题好像,要改下那个源码LZ自己确认下先。 如果赋给SaveDialog.FileName的字符串不合法就有问题,比如不执行保存 整个TFmBSP.RzBitBtn2Click方法都不执行? 你把代码贴到写字板上,看看有无怪字符,如果有,删除,再拷贝到DELPHI就好了 跟时间有关系,请看一下调这个过程的时间顺序,或在这个过程中加一个SLEEP试试 用sendmessage看看是哪里开始不执行了 CSDN上的人都是菜鸟 超难问题!!!如何改变 系统任务栏 的 颜色 和字体的颜色 !!!!!!!!!!!! 急!!!!!!!!!! 求教::怎么在浏览英文网页时能让那些字都显得清楚些 用Delphi7怎么发传真呀。我就这么点分了都给了。。 如何检测没有相同的用户名,如何设置同一Panel上所有控件的属性? 急:在程序中动态加载 DLL 并显示其窗体,但程序关闭时总出错,Why? ▓▓▓▓谁之错▓▓▓▓ 按两次按钮才有反应,右上角的对话框关闭按钮也一样 我使用DBGrid要修改显示出来的一些数据,但另外一些数据是不允许修改的,我该怎么做那? 如何在TDateTimePicker中把日期取出来? dll访问冲突问题 谁有ListView的排序算法
var
ExpClass:TDBGridEhExportClass;
Ext, sSave:String;
SaveDialog: TSaveDialog;
begin
SaveDialog:= TSaveDialog.Create(Nil);
// SaveDialog.FileName:= Form.Caption;
SaveDialog.Filter:='Text files (*.txt)|*.TXT|Comma separated values (*.csv)|*.CSV|HTML file (*.htm)|*.HTM|Rich Text Format (*.rtf)|*.RTF|Microsoft Excel Workbook (*.xls)|*.XLS';
sSave := Trim(ExtractFilePath(Application.ExeName)) + '导出数据'; if not DirectoryExists(sSave) then
begin
if not CreateDir(sSave) then
begin
raise Exception.Create('不能新建目录,请手工新建这目录。' + #13 + sSave);
end;
end;
SaveDialog.InitialDir:= sSave; if SaveDialog.Execute then
begin
case SaveDialog.FilterIndex of
1: begin ExpClass := TDBGridEhExportAsText; Ext := 'txt'; end;
2: begin ExpClass := TDBGridEhExportAsCSV; Ext := 'csv'; end;
3: begin ExpClass := TDBGridEhExportAsHTML; Ext := 'htm'; end;
4: begin ExpClass := TDBGridEhExportAsRTF; Ext := 'rtf'; end;
5: begin ExpClass := TDBGridEhExportAsXLS; Ext := 'xls'; end;
else
ExpClass := nil; Ext := '';
end;
if ExpClass <> nil then
begin
if UpperCase(Copy(SaveDialog.FileName,Length(SaveDialog.FileName)-2,3)) <> UpperCase(Ext) then
SaveDialog.FileName := SaveDialog.FileName + '.' + Ext;
SaveDBGridEhToExportFile(ExpClass,dbgAirPriceFile,SaveDialog.FileName,not dbgAirPriceFile.CheckCopyAction);
Application.MessageBox('数据成功导出!','信息',64);
end;
end;这个是无效代码?
导出时 字段间的分隔符有点问题好像,要改下那个源码
LZ自己确认下先。