我是 WT 的新手,我正在尝试上传文件示例。
当我单击发送按钮时,代码工作正常,文件进度条运行到 100%,但我不确定它上传到哪里?我们可以定义在某个路径上传..
class HelloApplication: public WApplication {
public:
HelloApplication(const WEnvironment& env);
private:
WPushButton *uploadButton;
Wt::WFileUpload *fu;
void greet();
};
HelloApplication::HelloApplication(const WEnvironment& env) :
WApplication(env) {
root()->addStyleClass("container");
setTitle("Hello world"); // application title
fu = new Wt::WFileUpload(root());
fu->setFileTextSize(50); // Set the maximum file size to 50 kB.
fu->setProgressBar(new Wt::WProgressBar());
fu->setMargin(10, Wt::Right);
// Provide a button to start uploading.
uploadButton = new Wt::WPushButton("Send", root());
uploadButton->setMargin(10, Wt::Left | Wt::Right);
// Upload when the button is clicked.
uploadButton->clicked().connect(this, &HelloApplication::greet);
}
void HelloApplication::greet() {
fu->upload();
uploadButton->disable();
}
WApplication *createApplication(const WEnvironment& env) {
return new HelloApplication(env);
}
int main(int argc, char **argv) {
return WRun(argc, argv, &createApplication);
}
最佳答案
当文件完成时,WFileUpload 将触发一个信号 (uploaded())。然后查看 spoolFileName() 以获取本地磁盘上文件的文件名。也可以监听 fileTooLarge(),因为它会通知您上传失败。
WFileUpload 的手册里有很多资料和一个代码示例:
http://www.webtoolkit.eu/wt/doc/reference/html/classWt_1_1WFileUpload.html
关于wt - 使用wt上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16054581/