فتح النافذة وإغلاقها وإعادة فتحها
لبات 0.7.0 · الإصدار الحالي
المضيف الأصلي فقط. اضغط إدخال مرتين في الطرفية التي تشغّل البرنامج. يتغير العنوان وتغلق النافذة الأولى ثم تفتح نافذة جديدة. يعيد النجاح 0.
محتويات الصفحة
تجهيز المضيف الأصلي
المضيف الأصلي فقط، لبات 0.7.0 المنشور. اضغط إدخال مرتين في الطرفية التي تشغّل البرنامج. يتغير العنوان وتغلق النافذة الأولى ثم تفتح نافذة جديدة. يعيد النجاح 0.
التثبيت الأصلي · دليل الرسم والإدخال · مرجع الواجهة.
لا يحتاج إلى وحدات مصدر أو ملفات بيانات.
لغة الصفحة مستقلة عن مفردات المصدر. نزّل الصيغ الموردة فقط بأسمائها الأصلية. تحمل البرامج ذات الصيغة المختلطة وحدها هذا الوصف في اللغتين، دون توليد ترجمة للمصدر.
المصدر المختلط
التنفيذ: المضيف الأصلي فقط · لبات 0.7.0
- لبات 0.7.0 أصلي على Linux بمعمارية x86_64 وglibc 2.34 أو أحدث.
- يحتاج التشغيل إلى شاشة Wayland/EGL أو X11/GLX متاحة وOpenGL 3.3 core. لا يحتاج إلى Raylib نظامي أو مترجم C. لا يحتاج الفحص والبناء إلى شاشة.
أسطر الإدخال: ["",""]
لا يتوفر مصدر عربي. المعروض هو مصدر مختلط كما ورد؛ لم تُترجم الشفرة.
// Run with: aspl run docs/examples/raylib-window.mixed.aspl
// Press Enter twice to observe title replacement and a fresh window.
import core::raylib;
استورد أساسي::رايليب.
fn start_main() -> i64 {
let flags = raylib::اضبط_أعلام_الإعداد(raylib::FLAG_WINDOW_RESIZABLE);
if not flags::ok { print(flags::error::message); return 1; }
let opened = رايليب::InitWindow(640, 360, "ASPL / نافذة رايليب");
if not opened::ok { print(opened::error::message); return 2; }
if not raylib::هل_النافذة_جاهزة() { return 3; }
let titled = raylib::SetWindowTitle("ASPL title / عنوان جديد");
if not titled::ok { print(titled::error::message); return 4; }
print("Window ready. Press Enter to close and reopen. / اضغط إدخال لإعادة الفتح.\n");
let first = read_line();
let closed = رايليب::أغلق_النافذة();
if not closed::ok { print(closed::error::message); return 5; }
if raylib::IsWindowReady() { return 6; }
let reopened = raylib::هيئ_نافذة(640, 360, "ASPL reopened / نافذة جديدة");
if not reopened::ok { print(reopened::error::message); return 7; }
print("Window reopened. Press Enter to finish. / اضغط إدخال للإنهاء.\n");
let second = read_line();
let finished = raylib::CloseWindow();
if not finished::ok { print(finished::error::message); return 8; }
return 0;
}
اتبع تعليمات Linux لتنفيذ هذا المثال. نزّل المصدر لحفظه.
تنزيل raylib-window.mixed.asplالنتائج المتوقعة
{
"native": {
"check": 0,
"status": 0,
"output": "Window ready. Press Enter to close and reopen. / اضغط إدخال لإعادة الفتح.\nWindow reopened. Press Enter to finish. / اضغط إدخال للإنهاء.\n",
"behavior": {
"en": "Press Enter twice in the terminal running the program. The title changes, the first window closes and a fresh window opens. Success returns 0.",
"ar": "اضغط إدخال مرتين في الطرفية التي تشغّل البرنامج. يتغير العنوان وتغلق النافذة الأولى ثم تفتح نافذة جديدة. يعيد النجاح 0."
}
}
}الأوامر والنتائج
شغّل من المجلد الذي يحتوي شجرة docs/ المنزلة. احتفظ بالملف المرافق .THIRD-PARTY-NOTICES عند توزيع برنامج ELF. لا يفتح الفحص والبناء نافذة. يحتاج التشغيل إلى متطلبات الرسوم المذكورة.
mixed:
aspl check docs/examples/raylib-window.mixed.aspl
aspl run docs/examples/raylib-window.mixed.aspl
aspl build -o raylib-window-mixed-program docs/examples/raylib-window.mixed.aspl
./raylib-window-mixed-program