Witam. Dawno nie pisałem, więc w końcu jestem i zatruje Wam życie może durnym ale przynajmniej dla mnie trudnym pytaniem. Otóż od niedawna piszę sobie w Qt i mam sobie tool buttons, teraz chciałbym uzyskać taki efekt że po kliknięciu na niego wyskakuje mi okienko jak mamy np. w wordzie plik->otwórz do wyszukiwania pliku.. a następnie dodać ten plik do tree widget. Chciałem poszukać wiadomości na google, ale nawet nie wiem pod jakim hasłem znajdę informacje na ten temat..
Nie gógle,ale Qt Assistant.A znaleźć chcesz QFileDialog-najlepiej zainteresuj się funkcjami statycznymi,które oferuje.
Jeśli zaś chcesz walnąć z grubej rury i się nie bawić w pojedyncze dodawanie plików to obacz QDirModel
Dziękuje :)
Zastanawia mnie tylko jeszcze jedno czy jest możliwośc, aby przy uruchamianiu tego QFileDialog standardowe położenie było by w "Moje Dokumenty"?
Napisałem to tak w skrócie:
// toolButton_2 Add file
void MainWindow::on_toolButton_2_clicked()
{
QString fileName = QFileDialog::getOpenFileName(this,tr("Dodaj plik"),
"C:\\Users\\", //chodzi o ten parametr, próbowałem ze zmienną środowiskową %HOMEPATH% ale nie działa
tr("Images (*.png *.xpm *.jpg)"));
}
Jest,zapodajesz takie coś:
QFileDialog::getOpenFileName(patent,"Tytuł dla szukanych plików","C:/Documents and Settings/NickUsera/Moje dokumenty",reszta parametrów...)
Qt nie lubi \ w ścieżkach,zawsze używaj /
Chyba mnie źle zrozumiałeś, bo np moj NiskUser to Radny i jeśli wpisze tam radny to okej bedzie działac ale juz u tomka czy bolka nie bedzie :( a chodzi o to że nie zależnie od tego gdzie uruchomiliśmy program standardowo QFIleDialog "był" w Moje Domukenty
Cóż,to tutaj się już bez gógla tudzież http://www.qtcentre.org nie obejdzie żeby spytać,czy w Qt jest możliwość pobrania ścieżki do folderu moje dokumenty.O ile mnie pamięć nie myli nie ma niestety takowej,i będziesz musiał sięgnąć do WinAPI
O znalazłem coś ciekawego:
"Qt doesn't currently provide a way to get that value, but you can get it out
of the registry easily enough using QSettings like:
QSettings settings(QSettings::UserScope, "Microsoft", "Windows");
settings.beginGroup("CurrentVersion/Explorer/Shell Folders");
QString myDocs=settings.value("Personal").toString();
Aż sam sobie zapamiętam na przyszłość
Jestes wielki!! ;))
Znowu ja.. Mam treeWidget i w nim mam kilka treeWidgetItem i chciałbym pobrac index aktualnie "wybranego" elementu treewidget.. ale nie wiem jak, szukałem jakiejś funkcji ale niestety nic nie znalazlem:(
Mozna usunąć
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.