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

اولین برنامه تحت کتابخانه‌ی SFML


پست های پیشنهاد شده

با توجه به موضوع قبل بعد از نصب و راه اندازی کتابخانه برای اینکه ساده ترین مثال ممکن را توضیح دهیم در پروژه‌ی خود در فایل main.cpp کد زیر را وارد کنید.

#include <iostream>
#include <SFML/Window.hpp>


int main() {
    
    sf::Window window(sf::VideoMode(640, 480), "Hello world!");
    std::cout << "Window is created!" << std::endl;

    return 0;
}

در کتابخانه‌ی SFML تمامی کلاس‌ها در هدر‌های مخصوص خود قرار دارند، همانند استاندارد تمامی کتابهانه‌های سی‌پلاس‌پلاس 🙂 بنابراین جهت نمایش یک پنجره ساده با ابعاد مشخص ما نیاز به هدر Window.hpp خواهیم داشت که در کُد بالا وارد شده است. از کلاس فوق نمونه گیری کرده و سپس تحت مشخصه‌ی VideoMode ابعاد و عنوان پنجره‌ی خود را وارد می‌کنیم. 

برنامه را اجرا کنید در صورتی که کتابخانه‌ی شما مشکلی نداشته باشد پنجره‌ی شما با مشخصات وارد شده نمایان خواهد شد. دقت کنید که برای ثابت نگه داشتن در یک بازه‌ی زمانی بهتر است از کد دستوری زیر برای نگه‌داری پنجره در زمان اجرا استفاده شود که هیچ قدرت قابل توجهی را از جانب پردازنده نمی‌طلبد:

sf::sleep(sf::seconds(3));

کُد بهینه شده با توجه به ایجاد رخداد کلیدی برای پایان دادن برنامه به صورت زیر خواهد بود:

#include <SFML/Window.hpp>

int main() {

    sf::Window window(sf::VideoMode(640, 480), "Hello world!");

    while (window.isOpen())
    {
        sf::Event event;

        while (window.pollEvent(event))
        {
            if (event.type == sf::Event::KeyPressed)
                window.close();
        }
    }

    return 0;
}

در داخل حلقه‌ی while در صورتی که رخداد فشرده شدن کلیدی از طرف دستگاه ورودی مانند صفحه کلید رُخ دهد، پنجره بسته خواهد شد.

کُد مربوطه را اجرا کنید، در صورتی که مشکلی وجود نداشته باشد پنجره ساخته شده شما نمایان و با فشرده شدن کلیدی از صفحه کلید بسته خواهد شد.🙂

در ادامه آموزش‌های لازم در بخش مربوطه ارائه خواهد شد.

  • پسندیدن 1

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
مهمان
این موضوع برای عدم ارسال قفل گردیده است.

  • کاربران آنلاین در این صفحه   0 کاربر

    هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.

×
×
  • جدید...