Clase wxDirDialog
Esta clase representa el cuadro de diálogo del selector de directorios.
Jerarquía:

Estilos
Esta clase admite los siguientes estilos:
- wxDD_DEFAULT_STYLE
- Equivale a una combinación de wxDEFAULT_DIALOG_STYLE y wxRESIZE_BORDER.
- wxDD_DIR_MUST_EXIST
- El diálogo solo permitirá al usuario elegir una carpeta existente. Cuando no se da este estilo, se añade un botón "Crear nuevo directorio" al diálogo (en Windows) o se proporciona alguna otra forma de que el usuario escriba el nombre de una nueva carpeta.
- wxDD_CHANGE_DIR
- Cambia el directorio de trabajo actual al directorio elegido por el usuario. Esta bandera no se puede utilizar con el estilo wxDD_MULTIPLE.
- wxDD_MULTIPLE
- Permite al usuario seleccionar múltiples directorios. Esta bandera solo está disponible desde wxWidgets 3.1.4
- wxDD_SHOW_HIDDEN
- Mostrar carpetas ocultas y de sistema. Esta bandera solo está disponible desde wxWidgets 3.1.4
Hay que tener en cuenta que wxRESIZE_BORDER tiene un efecto secundario especial en Windows, donde están disponibles dos diálogos de selección de directorio diferentes y este estilo también selecciona implícitamente la nueva versión, ya que la antigua siempre tiene un tamaño fijo. Como la nueva versión es casi siempre preferible, se recomienda utilizar siempre el estilo wxRESIZE_BORDER. Este es el caso si el diálogo se crea con el valor de estilo por defecto, pero si necesita utilizar algún estilo adicional debe especificar de todas formas wxDD_DEFAULT_STYLE a menos que se necesite explícitamente utilizar la versión antigua del diálogo en Windows. Por ejemplo
wxDirDialog dlg(NULL, "Choose input directory", "", wxDD_DEFAULT_STYLE | wxDD_DIR_MUST_EXIST);
en lugar de utilizar únicamente el estilo wxDD_DIR_MUST_EXIST.
Observaciones
MacOS 10.11+ no muestra una barra de título en el diálogo. Utilizar SetMessage() para cambiar la cadena mostrada al usuario en la parte superior del diálogo después de su creación. El método SetTitle() se proporciona por compatibilidad con las versiones de MacOS anteriores a 10.11 que aún soportan la visualización de la barra de título.
Funciones miembro
wxDirDialog()
wxDirDialog::wxDirDialog( wxWindow * parent, const wxString & message = wxDirSelectorPromptStr, const wxString & defaultPath = wxEmptyString, long style = wxDD_DEFAULT_STYLE, const wxPoint & pos = wxDefaultPosition, const wxSize & size = wxDefaultSize, const wxString & name = wxDirDialogNameStr )
Constructor.
Utilizar ShowModal() para mostrar el diálogo.
Parámetros
- parent
- Ventana padre.
- message
- Mensaje a mostrar en el diálogo.
- defaultPath
- La ruta por defecto, o la cadena vacía.
- style
- El estilo del diálogo.
- pos
- Posición del diálogo. Ignorado en Windows.
- size
- Tamaño del diálogo. Ignorado en Windows.
- name
- Nombre del diálogo, no utilizado.
~wxDirDialog()
virtual wxDirDialog::~wxDirDialog()
Destructor.
GetMessage()
virtual wxString wxDirDialog::GetMessage() const
Devuelve el mensaje que se mostrará en el diálogo.
GetPath()
virtual wxString wxDirDialog::GetPath() const
Devuelve la ruta por defecto o la seleccionada por el usuario.
Nota: Esta función no puede utilizarse con diálogos que tengan el estilo wxDD_MULTIPLE, utilizar GetPaths() en su lugar.
GetPaths()
virtual void wxDirDialog::GetPaths(wxArrayString & paths) const
Rellena el array paths con las rutas completas de los directorios elegidos.
Nota: Esta función solo debe usarse con los diálogos que tengan el estilo wxDD_MULTIPLE, usar GetPath() para los demás.
SetMessage()
virtual void wxDirDialog::SetMessage(const wxString & message)
Establece el mensaje que se mostrará en el diálogo.
SetPath()
virtual void wxDirDialog::SetPath(const wxString & path)
Establece la ruta por defecto.
ShowModal()
int wxDirDialog::ShowModal()
Muestra el diálogo, devolviendo wxID_OK si el usuario ha pulsado OK, y wxID_CANCEL en caso contrario.
Reimplementado a partir de wxDialog.
Métodos y datos heredados
Esta clase hereda los métodos y datos miembro públicos y protegidos de wxObject, wxEvtHandler, wxWindow, wxDialog, wxNonOwnedWindow y wxTopLevelWindow.