2011-12-05 27 views
1

我想使用SDL & OpenGL在C++中創建一個編輯器,並決定使用win32 api訪問窗口欄菜單(用於文件,編輯等),它看起來很簡單,但我不知道如何創建一個「文件 - >打開」文件瀏覽器/加載器...我希望它很簡單,但我發現很難查找谷歌上的任何教程因爲措辭...如何使用SDL獲取win32文件瀏覽器?

我只是想要在文件菜單中有一個「打開」或「導入」選項,它將打開一個標準的Windows文件瀏覽器...然後抓住文件位置,將其放入一個字符串,然後將其傳遞到一個函數,該函數通過選擇文件...(我希望這是有道理的)。

我使用創建的win32菜單是這個職位的方法: http://www.gamedev.net/topic/400677-sdl-with-a-win32-menu/

一半時頁面出現的「caseyd」 ......評論這就是我學會了如何使用它,所以這是我目前對SDL中win32菜單的理解......我想在這裏發佈代碼,但我不知道如何將它粘貼到代碼塊中,而無需重新格式化每一行。

我希望這很簡單......感謝任何能教會我如何或只是指向正確方向的人。

噢,我不想將它轉換爲其他操作系統,我就像SDL。

回答

0

使用GetOpenFileName()。請注意,該功能會阻止,直到用戶選擇一個文件,因此如果您想要在後臺繼續渲染等,請確保在單獨的線程上運行它。

+0

我有點困惑...我擡起頭「getopenfilename」,發現這個: [link](http://www.daniweb.com/software-development/cpp/code/217307) 但是當我嘗試使用「OPENFILENAME ofn;」,我得到編譯錯誤:「OPENFILENAME未在此範圍內聲明」...我不明白...一旦我包含windows.h,不應該理解這種類型?顯示窗口頂部的菜單選項,但不能聲明變量是「OPENFILENAME」類型。 – Kalisme

+0

@Kalisme:發佈您的代碼。編輯您的原始文章,添加代碼,突出顯示它,然後按**代碼示例**按鈕(它看起來像一對空的花括號'{}'),以確保格式正確。 –

+0

Ooooh ...事實證明,我只是沒有鏈接comdlg32 ...現在工作正常。謝謝你的幫助。 – Kalisme

相關問題