رفتن به مطلب
جامعه‌ی برنامه‌نویسان مُدرن ایران

GornerLabo

کاربـــر عـــــادی
  • تعداد ارسال ها

    91
  • تاریخ عضویت

  • آخرین بازدید

  • روز های برد

    4

آخرین بار برد GornerLabo در 2 آذر

GornerLabo یکی از رکورد داران بیشترین تعداد پسند مطالب است !

اعتبار در سایت

13 بسیار خوب

درباره GornerLabo

  • تاریخ تولد تعیین نشده

آخرین بازدید کنندگان نمایه

بلوک آخرین بازدید کننده ها غیر فعال شده است و به دیگر کاربران نشان داده نمیشود.

  1. GornerLabo

    ممنون ازتون بابت پاسخگویی
  2. GornerLabo

    با سلام و خسته نباشید خدمت اساتید محترم. در بحث Qt میخواستم کاربرد QMap ، QList و QVector رو بدونم که در کجاها ازشون استفاده میشه ؟ و آیا به جز این سه کلاس کلاسی دیگری هست در کیوت برای استفاده مشابه؟
  3. با سلام خدمت اساتید محترم کتابخانه KArchive رو اگه برای ویندوز بخوام بیلد کنم باید به چه شکل عمل کنم؟ کامپایلری که استفاده میکنم mingw هست. در این لینک کتابخانه KArchive معرفی شده است. با تشکر فراوان
  4. GornerLabo

    روش دیگه برای ادد کردن کتابخانه رو هم امتحان کردم اوکی شد: یک پوشه ایجاد کنید مثلا در مسیر C:\Qt\lib-archive مرحله بعد در داخل همین پوشه lib-archive برای راحتی می‌توانید دو پوشه به نام های include و lib ایجاد کنید. در این مرحله باید فایل های .h از کتابخانه اصلی را در پوشه include کپی کنید و همچنین فایل بیلد شده از dll ها ( یا پسوند .a ) را در پوشه lib کپی کنید. به Qt رفته و یک پروژه ایجاد کنید و در داخل فایل .pro به صورت دستی کد زیر را اضافه کنید: INCLUDEPATH += "C:/Qt/lib-archive/include" LIBS += -L "C:/Qt/lib-archive/lib" LIBS += -llibarchive اکنون تغییرات فایل .pro را ذخیره کرده و پروژه را یک بار بیلد کنید، کار تمام است و برای آزمایش می‌توانید طبق مثال های کتابخانه عمل کنید. با تشکر فراوان از اساتید محترم بخصوص آقای @کامبیز اسدزاده
  5. GornerLabo

    تشکر استاد
  6. GornerLabo

    بعد بیلد ، کتابخانه به این شکل دراومد. لینک دانلود کتابخانه بیلد شده با کامپایلر mingw مشکل حالا نحوه اد کردن این کتابخانه س. فایل dll داره در فولدر bin ولی فایل .h نداره که داینامیک ادد کنم
  7. GornerLabo

    مشکل بیلد هم حل شد. سپاس استاد. برای اضافه کردن به پروژه از گزینه add library استفاده میکنم . برای این منظور بعد add library ، مسیر کتابخانه و فایل .a رو فقط میتونم اضافه کنم که با بیلد کردن پروژه با ارور مواجه میشم. گوگل کردم و چندجایی دیدم مشکل داشتن در ویندوز برای اضافه کردن. اینم حل شه ازتون ممنون میشم
  8. GornerLabo

    استاد ممنون بابت پاسخ گویی. من ازکاربرای ویندوزم. برای بیلد در ویندوز و کامپایلر mingw32 باید به چه نحو عمل کرد؟
  9. GornerLabo

    برای فرمت zip حل شد! طبق این لینک حالا برای فرمت های tar و lz4 باید به چه شکل عمل کرد؟
  10. GornerLabo

    دوره تصویری برای آموزش این کتابخانه دارین؟
  11. با سلام و خسته نباشید خدمت اساتید محترم. اگه بخواییم در QWidget یک فایل فشرده با فرمت های مختلف همچون zip , RAR , tar و ... را فراخوانی کنیم و فایل های محتوایی که در این فایل فشرده هست را در برنامه استخراج (Extract) کرده و به صورت یک لیست دربیاریم و به صورت دلخواه هر فایل را جدا استفاده کنیم باید به چه شکل عمل کنیم؟ آیا کتابخانه خاصی داره برای این کار ؟ اگر مثال در این مورد سراغ دارین ممنون میشم کمک کنید. با تشکر
  12. GornerLabo

    با این تکه کد حل شد QByteArray ba; ba.resize(100); ba.fill(0x00); ba[0] = 0x01; port->write(ba); port->flush();
  13. GornerLabo

    با سلام. برای رایت دستورات در QSerialPort چندین روش هست که به ترتیب عبارتند از: 1- دستورات رشته ای: QString str = "command\r\n"; port->write(str.toStdString().c_str()); 2- فایل های باینری: QFile file(":/bin/file.bin"); if(!file.open(QIODevice::ReadOnly))return; QByteArray data = file.readAll(); port->write(data); 3- متغیر QByteArray: که مشکل من در این قسمت هست. فرض کنید متغیر زیر تعریف شده: QByteArray ba; ba.resize(100); ba.fill(0x00); ba[0] = 0x01; ba[8] = 0x0a; اگر این متغیر را در یک فایل باینری ذخیره کنیم مشکلی در رایت نیست اما اگر بدون ذخیره در باینری بخواهیم در پورت سریال رایت کنیم ، عمل رایت انجام نمیشه
  14. GornerLabo

    خیلی ممنون استاد
  15. با سلام خدمت اساتید محترم. اگر بخواهیم مقدار بازگشتی از رایت چندین دستور در مورد کلاس QSerialPort به صورت دلخواه ذخیره کنیم باید به چه شکل عمل کرد؟ کد زیر برای دستوری است که عمل رایت دستور را انجام میدهد: port->setPortName(""); // COM PORT NAME port->setBaudRate(QSerialPort::Baud9600); port->setFlowControl(QSerialPort::NoFlowControl); port->setParity(QSerialPort::NoParity); port->setDataBits(QSerialPort::Data8); port->setStopBits(QSerialPort::OneStop); port->open(QSerialPort::ReadWrite); if(port->isOpen()) { port->write(); // command 1 for write port->write(); // command 2 for write port->write(); // command 3 for write port->write(); // command 4 for write } حالا برای هر دستور رایت یک مقدار بازگشتی دریافت خواهیم کرد. پس میتوان با connect سیگنال readyRead با یک اسلات به صورت کد زیر این مقدار بازگشتی رو ذخیره کرد: connect(port,SIGNAL(readyRead()),this,SLOT(MySlot())); QByteArray b = port->readAll(); QFile file("e:/test/raw.bin"); if(!file.open(QIODevice::WriteOnly | QIODevice::Append))return; file.write(b); file.flush(); file.close(); حالا اگر بخواهیم مقدار بازگشتی رو از دستور رایت مشخصی دریافت کنیم ، شیوه صحیح کار چطور است؟
×