PDA

View Full Version : باز کردن یک فایل



arashz4
یک شنبه 01 آذر 1394, 09:28 صبح
سلام من برنامه ای نوشتم روی یک فایل مانند png. اگر دابل کلیک کنید اون فایل توسط نرم افزار من باز میشه (اگر نرم افزار من پیش فرض باشه) با گرفتن آرگومن با این روش:

QApplication::arguments()
خب این کد توی ویندوز و لینوکس مشکلی نداره ولی توی مک اگر بخای روی یک فایل که نرم افزار پیش فرضش نرم افزار من هست دابل کلیک کنی تنها نرم افزار باز میشه ولی آدرس فایل به نرم افزار فرستاده نمیشه یعنی در واقع به QApplication::arguments فرستاده نمیشه، تنها در صورتی این کار انجام میشه که از ترمینال مستقیم به فایل باینری نه فایل app. یک ارگومن بفرستی. در این صورت به QApplication::arguments آدرس فایل فرستاده میشه خوب من توی اینترنت دنبال راه حلش گشتم و به کلاس QFileOpenEvent (http://doc.qt.io/qt-5/qfileopenevent.html) بر خوردم ولی این کلاس هیچ مثالی نداره که بشه فهمید چطوری ازش استفاده کرد. کسی تا به حال به این مشکل برخرده یا با QFileOpenEvent آشنایی داره یا راه حلی برای این مشکل داره؟
با سپاس.