Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[Allegr5] allegro_native_dialog - nie wyłącza się okienko dialogu

Ostatnio zmodyfikowano 2016-07-07 08:15
Autor Wiadomość
marianekA
Temat założony przez niniejszego użytkownika
[Allegr5] allegro_native_dialog - nie wyłącza się okienko dialogu
» 2016-07-03 13:28:09
Zrobiłem jakiś czas temu edytor plansz teraz go troszkę modernizuję i próbuję użyć w jego menu... systemowe 'okienko wyboru pliku'.
Wszystko jest niby OK, przy dwukliku działa poprawnie, wybiera plik i okienko się wyłącza.
Problem jest przy klikaniu na przyciski okienka  "Otwórz, Anuluj, X' - okienko się nie wyłącza i pokazuje się komunikat "problem z aplikacją'.


zamieszczam kod funkcji okienka:
 
C/C++
//...
#include <allegro5/allegro_native_dialog.h>
#include <string>
//...
void okno_wyboru()
{
    ALLEGRO_FILECHOOSER * okienko;
    okienko = al_create_native_file_dialog( NULL, "Wybierz plik", "*.jpg*;*.png*;*.bmp*", ALLEGRO_FILECHOOSER_PICTURES );
    const char * filename;
    al_show_native_file_dialog( okno, okienko );
    filename = al_get_native_file_dialog_path( okienko, 0 );
    string wybranyplik = filename;
    al_destroy_native_file_dialog( okienko );
    kafle = al_load_bitmap( wybranyplik.c_str() );
}

 Co powinienem tu dodać by było OK? tylko bez używania eventów bo jakoś ich nie polubiłem i żeby funkcja się za bardzo nie rozrosła..
P-149639
maly
» 2016-07-05 10:49:04
Nie sprawdzasz przed użyciem al_get_native_file_dialog_path czy jakiś plik wogóle został wybrany, do tego służy funkcja al_get_native_file_dialog_count.
C/C++
// czy wybrano jakiś plik
if( al_get_native_file_dialog_count( okienko ) )
{
    // wybrano plik więc pobrac nazwe i zaladowac obrazek
    kafle = al_load_bitmap( al_get_native_file_dialog_path( okienko, 0 ) );
}
P-149688
marianekA
Temat założony przez niniejszego użytkownika
» 2016-07-07 08:15:19
Teraz jest dobrze.
Dziękuję Koledze za pomoc i zainteresowanie.
P-149742
« 1 »
  Strona 1 z 1