Я пытаюсь использовать Fl_Native_File_Chooser из fltk 1.3, и класс отлично работает, за исключением установки стартового каталога.Кто-нибудь использовал Fl_Native_File_Chooser и установил каталог запуска?
const char *start_dir = "C:\\Program Files (x86)";
Fl_Native_File_Chooser native(Fl_Native_File_Chooser::BROWSE_DIRECTORY);
native.directory(start_dir);
native.title("Select a directory");
native.type(Fl_Native_File_Chooser::BROWSE_DIRECTORY);
std::string directoryName;
switch (native.show())
{
case -1: break; //fprintf(stderr, "ERROR: %s\n", native.errmsg()); break; // ERROR
case 1: break; //fprintf(stderr, "*** CANCEL\n"); fl_beep(); break; // CANCEL
default: // PICKED FILE
if (native.filename()) directoryName = native.filename();
break;
}
std::cout << directoryName << std::endl;
Я изучил код. В Fl_Native_File_Chooser_WIN32.cxx и int Fl_Native_File_Chooser :: showdir() Я не понимаю, почему _binf.pidlRoot не установлен. Я посмотрел Fl_Native_File_Chooser :: showfile(), но способ, которым настроен диалог, отличается.
Так кто-нибудь успешно установил каталог запуска для Fl_Native_File_Chooser, когда вы просматриваете каталог?
Странная вещь для меня в том, что работает обычный Fl_File_Chooser.
Какой компилятор вы используете? Я использую VS2008 Professional. – DannyK