当前位置: 代码迷 >> PB >> 在PB窗口中,怎么制作另存为对话框。
  详细解决方案

在PB窗口中,怎么制作另存为对话框。

热度:432   发布时间:2016-04-29 10:38:40.0
在PB窗口中,如何制作另存为对话框。。。
在窗口中,将数据窗口的资料另存为EXCEL,而目前是固定写的路径,想实现让用户自己选择路径,并让用户来定义文件名,出现一个“另存为对话框”。。。求帮助!

------解决方案--------------------
GetFileSaveName

string ls_path, ls_file
int li_rc

ls_path = sle_1.Text

li_rc = GetFileSaveName( "Select File", &
ls_path, ls_file, "XLS", &
"EXCEL FILE (xls.*),xls.*" , "C:\My Documents", &
32770)

IF li_rc = 1 Then
dw_1.saveas(....)
End If
------解决方案--------------------
调用getfilesavename,getfileopename,getfolder,dirlist之类的方法时,应用程序的当前路径会发生变化,所以最好用一个全局变量存储应用程序的路径,在调用上述方法后马上调用changedirectory重新将当时路径改过来,否则应用程序中使用相对路径方式引用的资源就会出现错误~~~切记!
------解决方案--------------------
GetFileSaveName() 
功能 显示保存文件对话框 让用户选择要保存到的文件
语法 GetFileSaveName(title,pathname,filename{,extension{,filter}}) 
参数 title string类型 指定对话框的标题
pathname string类型变量 用于保存该对话框返回的文件路径及文件名
filename string类型变量 用于保存该对话框返回的文件名
extension string类型 可选项 使用 1到 3个字符指定默认的扩展文件名
filter string类型 可选项 其值为文件名掩码 指定显示在该对话框的列表框中供用户选择的文件名满足的条件 比如*.* *.TXT *.EXE 等
返回值 Integer 函数执行成功时返回 1 当用户单击了对话框上的 Cancel 按钮时函数返回 0 发生错误时返回-1 如果任何参数的值为 NULL 那么 GetFileSaveName()函数返回ULL

string ls_path
string ls_file
integer li_rc

if dw_1.rowcount() > 0 then
li_rc = getfilesavename("选择保存文件",ls_path,ls_file,"XLS","电子表格 (*.XLS),*.XLS","d:\",32770)

if li_rc = 1 then
uf_save_dw_as_excel(dw_1,ls_file)

end if

end if
------解决方案--------------------
用dw2xls吧
------解决方案--------------------
GetFileSaveName
  相关解决方案