Win32 Api: How create Open/"Save as" Dialog?
Marcone
marcone at email.com
Sat Jan 11 12:22:25 UTC 2020
On Friday, 10 January 2020 at 14:48:49 UTC, Marcone wrote:
> How create "Open" and "Save as" Dialog using "Win32 Api" and
> Dlang? Please send me a simple example code in Dlang. Thank you
> very much.
Solution:
import std;
import core.sys.windows.windows;
pragma(lib, "comdlg32");
// Function askopenfilename()
string askopenfilename(const(wchar)* filter = ""){
OPENFILENAME ofn;
wchar[1024] szFileName = 0;
ofn.lpstrFile = cast(LPWSTR) szFileName;
ofn.lpstrFilter = filter;
ofn.nMaxFile = MAX_PATH;
ofn.Flags = OFN_EXPLORER | OFN_FILEMUSTEXIST |
OFN_HIDEREADONLY;
if (GetOpenFileNameW(&ofn)){
return to!string(szFileName[0..szFileName.indexOf('\0')]);
} else {
return "";
}
}
void main(){
writeln(askopenfilename()); // Call without filter.
writeln(askopenfilename("Text Files (*.txt)\0*.txt\0All Files
(*.*)\0*.*\0")); // Cal using filter.
}
More information about the Digitalmars-d-learn
mailing list