Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Persian
  4. [SOLVED] فرم کریستالی ... !
Forum Updated to NodeBB v4.3 + New Features

[SOLVED] فرم کریستالی ... !

Scheduled Pinned Locked Moved Persian
16 Posts 5 Posters 6.7k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    A Offline
    Abbas Naghdi
    wrote on last edited by
    #5

    [quote author="soroush" date="1357408994"]p{direction:rtl; text-align:right}. چرا با سی‌شارپ برنامه‌تو نمی‌نویسی؟[/quote]

    p{direction:rtl; text-align:right}. سروش جان من دارم با کیوت برنامه مینویسم حالا برم با c# بنویس
    c# رو یاد گرفتم برا پول در آوردن و کیوت رو برا کار های بزرگ و ... (بهم انرژی میده (مثل دارو های نیرو زا)) این برنامه ای که میخام بنویسم بزرگه ... میدونی که ... !

    1 Reply Last reply
    0
    • H Offline
      H Offline
      hdeldar
      wrote on last edited by
      #6

      p{direction:rtl; text-align:right}. سلام
      منظورتون اینکه می خواهید فرمتون بشکل دلخواه باشه ؟ یا شفاف باشه ؟
      خوب خیلی ساده است . اول paint ويدجت رو خودتون باید دست بگیرید و یک تصویر با هر شکل دلخواه که البته باید سطح الفا هم داشته باشه رو روی ویجت بکشید . بعد تو کانستراکت ویجت هم کافیته مقدار Qt::WA_TranslucentBackground و Qt::FramelessWindowHint رو setAttribute كنيد.برای تب هم خیلی ساده با stylesheet مي تونيى به همين شكل در بارید.

      1 Reply Last reply
      0
      • S Offline
        S Offline
        soroush
        wrote on last edited by
        #7

        [quote author="hdeldar" date="1357410531"]p{direction:rtl; text-align:right}. سلام
        منظورتون اینکه می خواهید فرمتون بشکل دلخواه باشه ؟ یا شفاف باشه ؟
        خوب خیلی ساده است . اول paint ويدجت رو خودتون باید دست بگیرید و یک تصویر با هر شکل دلخواه که البته باید سطح الفا هم داشته باشه رو روی ویجت بکشید . بعد تو کانستراکت ویجت هم کافیته مقدار Qt::WA_TranslucentBackground و Qt::FramelessWindowHint رو setAttribute كنيد.برای تب هم خیلی ساده با stylesheet مي تونيى به همين شكل در بارید.[/quote]

        p{direction:rtl; text-align:right}. روش درستی نیست.

        [quote author="Abbas Naghdi" date="1357409494"]
        [quote author="soroush" date="1357408994"]p{direction:rtl; text-align:right}. چرا با سی‌شارپ برنامه‌تو نمی‌نویسی؟[/quote]

        p{direction:rtl; text-align:right}. سروش جان من دارم با کیوت برنامه مینویسم حالا برم با c# بنویس
        c# رو یاد گرفتم برا پول در آوردن و کیوت رو برا کار های بزرگ و ... (بهم انرژی میده (مثل دارو های نیرو زا)) این برنامه ای که میخام بنویسم بزرگه ... میدونی که ... ! [/quote]

        p{direction:rtl; text-align:right}. Qt یک فریم‌ورک چندسکویی است. یک کد می‌نویسی توی ۱۰ تا سیستم‌عامل اجرا می‌کنی. الان انتظار داری برای API ویندوز یک API اضافی هم بدن برات؟ یک لایهٔ کاملاً اضافی و سربار که فقط کدنویسی‌تو راحت‌تر می‌کنه؟

        1 Reply Last reply
        0
        • H Offline
          H Offline
          hdeldar
          wrote on last edited by
          #8

          p{direction:rtl; text-align:right}. چند تا برنامه برای ویندوز و لینوکس به این روشی که گفتم نوشتم و اشکال اجرایی تا حالا گزارش نشده .سرعتش هم بد نیست ولی تو ریسایز تو ویندوز یک تریکی زدم و سرعت رو بردم بالا. اما اگر این روش اشکال اساسیی ممکنه داشته باشه بهم بگید خیلی خوشحال میشم

          1 Reply Last reply
          0
          • S Offline
            S Offline
            soroush
            wrote on last edited by
            #9

            [quote author="hdeldar" date="1357411163"]p{direction:rtl; text-align:right}. چند تا برنامه برای ویندوز و لینوکس به این روشی که گفتم نوشتم و اشکال اجرایی تا حالا گزارش نشده .سرعتش هم بد نیست ولی تو ریسایز تو ویندوز یک تریکی زدم و سرعت رو بردم بالا. اما اگر این روش اشکال اساسیی ممکنه داشته باشه بهم بگید خیلی خوشحال میشم [/quote]

            p{direction:rtl; text-align:right}. چیزی رو که وجود داره با یه چیز جدید داری جایگزین می‌کنی. توی ویندوز سیستم Window management ،هست. و باهاش می‌شه هر بلایی سر پنجره‌ها و ضاهر برنامه‌ها دراورد. میشه شکل دکمه‌های کنترلی رو عوض کرد نوار عنوان پنجره‌ها رو رنگارنگ کرد و از این جینگولک کاری‌ها. حالا با استفاده از همون API داری titlebar رو حدف می‌کنی که خودت دوباره نقاشی‌ش کنی.

            1 Reply Last reply
            0
            • A Offline
              A Offline
              Abbas Naghdi
              wrote on last edited by
              #10

              [quote author="hdeldar" date="1357410531"]p{direction:rtl; text-align:right}. سلام
              منظورتون اینکه می خواهید فرمتون بشکل دلخواه باشه ؟ یا شفاف باشه ؟
              خوب خیلی ساده است . اول paint ويدجت رو خودتون باید دست بگیرید و یک تصویر با هر شکل دلخواه که البته باید سطح الفا هم داشته باشه رو روی ویجت بکشید . بعد تو کانستراکت ویجت هم کافیته مقدار Qt::WA_TranslucentBackground و Qt::FramelessWindowHint رو setAttribute كنيد.برای تب هم خیلی ساده با stylesheet مي تونيى به همين شكل در بارید.[/quote]

              p{direction:rtl; text-align:right}. یکم توضیح بیشتر میدی ... ؟

              1 Reply Last reply
              0
              • A Offline
                A Offline
                Abbas Naghdi
                wrote on last edited by
                #11

                p{direction:rtl; text-align:right}. من کرسیتالی رو برای ویندوز میخام ... آخه لینوکس کریستالی واسه چیشه ... !
                من میخام یه دکمه داخل بخش کریستالی بزارم
                اگه میشه چطوری ... ؟
                اگه نمیشه که بازم چطوری title رو حذف کنم و دوباره خودم بسازم و ...

                1 Reply Last reply
                0
                • M Offline
                  M Offline
                  mohsen
                  wrote on last edited by
                  #12

                  p{direction:rtl;text-align:right}. جالبه اتفاقا چند روز پیش این مطلب رو داشتم مطالعه میکردم و بوکمارکش کردم.
                  http://blog.qt.digia.com/blog/2009/09/15/using-blur-behind-on-windows

                  p{direction:rtl;text-align:right}. سورس
                  http://chaos.troll.no/~jbache/blurbehind.zip

                  1 Reply Last reply
                  0
                  • H Offline
                    H Offline
                    hdeldar
                    wrote on last edited by
                    #13

                    p{direction:rtl; text-align:right}. یک برنامه خیلی ساده پایین نوشتم که تو سازنده ویجتتون کافیه دو خط کد و یک لود تصویر رو انجام بدید :
                    @
                    Widget::Widget(QWidget *parent)
                    : QWidget(parent)
                    {
                    QWidget::setWindowFlags( Qt::FramelessWindowHint);
                    setAttribute(Qt::WA_TranslucentBackground, true);
                    bgPixmap.load("../background.png");
                    }
                    @

                    p{direction:rtl; text-align:right}. توی تابع paintEvent هم که یک تابع virtual هست هم كافيه اون تصویر رو روی ویجتت بکشی

                    @
                    void Widget::paintEvent(QPaintEvent *event)
                    {
                    QPainter painter(this);
                    painter.drawPixmap(0,0,bgPixmap);
                    }
                    @

                    p{direction:rtl; text-align:right}. برای تغییر شکل برنامه خودمون منطقی نیست کل ویندوز رو بهم بریزیم.

                    1 Reply Last reply
                    0
                    • A Offline
                      A Offline
                      Abbas Naghdi
                      wrote on last edited by
                      #14

                      p{direction:rtl; text-align:right}. مرسی بچه ها چیزی که میخاستم شد

                      1 Reply Last reply
                      0
                      • N Offline
                        N Offline
                        nice_2000
                        wrote on last edited by
                        #15

                        p{direction:rtl; text-align:right;font-family:tahoma}. دقت کنید که اگر از FramelessWindowHint استفاده کنید پنجره امکان Minimize شدن رو نخواهد داشت و SplashScreen هم باعث میشه که آیکن برنامه در Taskbar نمایش داده نشه!

                        1 Reply Last reply
                        0
                        • H Offline
                          H Offline
                          hdeldar
                          wrote on last edited by
                          #16

                          p{direction:rtl; text-align:right}. بله تو کد بالا حذف کردم . اگر بطور کامل مشکلتون حل شده بهتره تو ابتدای عنوان تاپیک عبارت [SOLVED] اضافه کنید

                          1 Reply Last reply
                          0

                          • Login

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • Users
                          • Groups
                          • Search
                          • Get Qt Extensions
                          • Unsolved