Qt: راست چین کردن آیتم های منو

اسفند ۷م, ۱۳۹۰ بدون دیدگاه »

در حالت عادی وقتی فرممون رو فارسی میکنیم و layout اون رو right to left میزاریم منو ها right to left نمیشن.

با یه جستجو تو اینترنت به این جواب رسیدم که با استفاده از دستور زیر میتونیم منو هامون رو هم بصورت right to left نمایش بدیم:

QApplication::setLayoutDirection(Qt::RightToLeft);

فیلترنت

اسفند ۶م, ۱۳۹۰ بدون دیدگاه »

 

نمیدونم چه کردم، اما به هر حال فیلتر شدم !!!
دست برادرا درد نکنه !!!

Qt: ذخیره متن HTML در QString و نمایش آن در QLabel

بهمن ۱۹م, ۱۳۹۰ یک دیدگاه »

در حالت عادی وقتی بخوایم یه سری تگ HTML رو توی یه QString ذخیره کنیم، موقع نمایش اون توی QLabel تگ های HTML شناخته نشده و خود تگ ها رو هم جزو متن میبینیم. مثلا اگه  بخوایم تگ زیر رو نمایش بدیم :

Hello World

وقتی از کد زیر استفاده کنیم :

Hello <font color=Blue>World</font>

بصورت زیر نمایش داده میشه :

Hello <font color=Red>World</font>

حالا اگه بخوایم این متن درست نشون داده بشه کافیه که در ابتدای متنمون به QString بفهمونیم که داخلش تگ های HTML وجود داره، برای این منظور می تونیم از متا تگ زیر استفاده کنیم:

<!DOCTYPE HTML PUBLIC \”-//W3C//DTD HTML 4.0//EN\” \”http://www.w3.org/TR/REC-html40/strict.dtd\”>

که باعث میشه تگ های HTML به درستی نمایش داده بشه. به عنوان مثال :

QString str = “<!DOCTYPE HTML PUBLIC \”-//W3C//DTD HTML 4.0//EN\” \”http://www.w3.org/TR/REC-html40/strict.dtd\”>\n”
“Hello <font color=Red>devildarkness</font>”;
label->setText(str);

 

آپدیت ۱۳۹۰/۱۱/۲۳: بجای روش فوق میتونیم از متد setTextFormat بصورت زیر استفاده کنیم :

 

label->setTextFormat(Qt::RichText);

بدست آوردن فضای خالی درایو ها در لینوکس

بهمن ۵م, ۱۳۹۰ بدون دیدگاه »

برای این کار از دستور df بصورت زیر استفاده میکنیم :‌

reza@reza-linux-vm:~$ df

که نتیجه ای بصورت زیر بر میگردونه:

Filesystem                   ۱K-blocks                Used       Available      Use%   Mounted on
/dev/sda1                    ۳۹۷۷۱۷۵۶          ۱۹۷۷۶۸۲۴     ۱۷۹۷۴۶۳۲       ۵۳%    /
none                               ۵۰۷۲۲۸                   ۲۲۰        ۵۰۷۰۰۸         ۱%    /dev
none                               ۵۱۲۸۴۸                   ۲۶۴        ۵۱۲۵۸۴         ۱%    /dev/shm
none                               ۵۱۲۸۴۸                   ۱۰۴        ۵۱۲۷۴۴         ۱%    /var/run
none                               ۵۱۲۸۴۸                      ۰         ۵۱۲۸۴۸         ۰%   /var/lock
/dev/sdb1                      ۷۸۰۹۰۸۸            ۷۲۷۱۱۵۶         ۵۳۷۹۳۲       ۹۴%   /media/DEADMAN

که برای خواناتر بودن نتیجه میتونیم از سوئیچ -h استفاده کنیم :

reza@reza-linux-vm:~$ df -h
Filesystem                  Size    Used     Avail    Use%      Mounted on
/dev/sda1                   ۳۸G     ۱۹G      ۱۸G      ۵۳%       /
none                        ۴۹۶M    ۲۲۰K    ۴۹۶M       ۱%       /dev
none                        ۵۰۱M    ۲۷۶K    ۵۰۱M       ۱%       /dev/shm
none                        ۵۰۱M    ۱۰۴K    ۵۰۱M       ۱%       /var/run
none                        ۵۰۱M         ۰    ۵۰۱M        ۰%       /var/lock
/dev/sdb1                  ۷٫۵G    ۷٫۰G    ۵۲۶M      ۹۴%       /media/DEADMAN

که مقادیر رو بر حسب کیلو/مگا/گیگا بایت نشون میده که برای ما خوانا تر میشه.

 

 

Qt: استفاده از کاراکتر های یونیکد در کد برنامه

دی ۲۹م, ۱۳۹۰ یک دیدگاه »

از امروز میخوام راجع به پلتفرم جدیدی که برنامه نویسیش رو شروع کردم بنویسم و چیزایی رو که یاد میگیرم رو اینجا با بقیه به اشتراک بزارم. امیدوارم که این تجربیات هرچند ناچیز یه روزی به درد یه نفر بخوره.

یه مشکلی رو که تا الان با نوشتن متن های فارسی تو Qt داشتم و امروز حلش کردم این بود که وقتی میخواستم تو Source برنامم یه رشته متنی فارسی (یونیکد) رو استفاده کنم به مشکل بر میخوردم و کاراکتر ها اشتباه نشون داده میشد. واسه رفع این مشکل یکم با گوگل مشورت کردم و راه حل رو پیدا کردم :

برای استفاده از کاراکتر های None ASCII توی کد میتونیم از QString::fromUtf8 به شکل زیر استفاده کنیم:

QString foo = QString::fromUtf8( “funny characters” );

اینجوری ابتدا رشته به یونیکد تبدیل میشه و بعد ذخیره میشه.

تغییر مرورگر پیش فرض از طریق خط فرمان

آذر ۳۰م, ۱۳۹۰ بدون دیدگاه »

برای این منظور میتونیم از دستور زیر استفاده کنیم :

$ sudo update-alternatives –config x-www-browser

با وارد کردن این دستور منوی زیر باز میشه :

There are 5 alternatives which provide `x-www-browser’.

Selection Alternative
———————————————–
1        /usr/bin/firefox-3.0
2        /usr/bin/firefox-3.5
3        /usr/bin/google-chrome
4        /usr/bin/opera
5        /usr/bin/chromium-browser

Press enter to keep the default[*], or type selection number:

حالا میتونیم مرورگر مورد نظرمون رو با وارد کردن شماره مورد نظر انتخاب کنیم یا با استفاده از کلید ” * ” همون انتخاب فعلی رو ذخیره کنیم.

 

فعال سازی mod rewrite در apache2

آذر ۱۵م, ۱۳۹۰ ۲ دیدگاه »

هنگامی که apache2 رو بر روی اوبونتو (۱۱٫۱۰)نصب میکنیم، بطور پیشفرض mod rewrite فعال نیست، تو یه سری جا ها مثل CakePHP به فعال بودن این mod بر روی apache نیاز داریم. برای فعال کردن اون میتونیم از روش زیر استفاده کنیم:

 

ابتدا apache2 رو با دستور زیر نصب میکنیم:

sudo apt-get install apach2

بعد از اینکه نصب به اتمام رسید باید ببینیم که mod_rewrite.so تو کدوم مسیر قرار گرفته. برای این منظور از دستور های زیر استفاده میکنیم:

ادامه نوشتهفعال سازی mod rewrite در apache2

مشاهده وضعیت استفاده RAM

آذر ۶م, ۱۳۹۰ بدون دیدگاه »

برای بدست آوردن میزان رم مصرفی سیستم میتونیم از دستور free استفاده کنیم. که این دستور کل حافظه، میزان مصرفی و میزان حافظه آزاد رو نمایش میده. این دستور همچنین میزان استفاده از فضای swap رو هم نمایش میده.

برای تعیین نوع نمایش حافظه میتونیم از سوئیچ های زیر استفاده کنیم:

-b:                 برای نمایش به فرمت بایت

-k:           برای نمایش به فرمت کیلو بایت

-m:            برای نمایش به فرمت مگابایت

-g:           برای نمایش به فرمت گیگا بایت

 

همچنین با استفاده از سوئیچ -t میتونیم مجموع استفاده از RAM و swap space سیستم رو ببینیم.

موسس اپل درگذشت

مهر ۱۴م, ۱۳۹۰ بدون دیدگاه »

دنیای تکنولوژی امروز یکی از بزرگترین
اسطوره های خود رو از دست داد.

روحش شاد.

غیر فعال کردن Spell Checking در eclipse

شهریور ۱۵م, ۱۳۹۰ بدون دیدگاه »

یکی از امکاناتی که IDE eclipse داره قابلیت دیکشنری اونه که تلفظ لغات تایپ شده رو چک میکنه، این قابلیت خوبه، اما برا امثال من که یکم زبانشون ضعیفه یکم اذیت کنندست. برای راحت شدن از شر این خط های قرمز کافیه به مسیر:

Window->Preferences :: General->Editor->Text Editors->Spelling

بریم و تیک Enable spell checking رو برداریم.

به همین راحتی !!!