المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : مشروع مفتوح .... تغيير الخلفية اما بلون او بصورة من صور النظام او من مجلد الصور


عبد الهادي بهاب
03-05-2016, 03:48 AM
السلام عليكم

مشروع مفتوح .... تغيير الخلفية اما بلون او بصورة من صور النظام او من مجلد الصور

http://i86.servimg.com/u/f86/12/62/73/88/back10.jpg


سنضع هنا شرحا بسيطا لاكواد تغيير الخلفية

-----------------
اولا : الكود المسؤول عن تغيير الخلفية هو
Application.SetPageProperties("Page1", nil);
فيه ثلاثة خيارات اما اللون الاحادي و رقمه هو 0

Application.SetPageProperties("Page1", {BackgroundType= 0});

او خليط لونين 1

Application.SetPageProperties("Page1", {BackgroundType= 1});

او ادراج صورة 2

Application.SetPageProperties("Page1", {BackgroundType= 2});

---------------------------
الان من اجل تغيير الخلفية بصورة من مجلد الصور الموجودة ....

اولا يجب ان نعتمد الخيار رقم 2 وهو خاص باعتماد الصور للخلفية

Application.SetPageProperties("Page1", {BackgroundType= 2});
ثم نختار الصورة
مثلا لتكون الصورة تحمل اسم 33 من توسعة jpg


Application.SetPageProperties("Page1", {ImageFilename = "AutoPlay\\Images\\33.jpg"});
-------------------------------
من اجل تغيير خلفية البرنامج الى لون معين :
اولا يجب ان نعتمد الخيار رقم 0 وهو خاص باللون الوحيد للخلفية

Application.SetPageProperties("Page1", {BackgroundType= 0});
ثم نحتار اللون الاحمر و رقمه 255 بصيغة rgb



Application.SetPageProperties("Page1", {BackgroundColor= (255)});وقد تستعمل نظام الاولوان المستعمل في البرنامج بصيغة hex
من اجل اللون الاحمر مثلا وهو FF0000

Application.SetPageProperties("Page1", {BackgroundColor= Math.HexColorToNumber("FF0000")});-----------------------------
اذا اردنا ان يظهر للمستخدم نافذة ليختار اللون المناسب فان نلجا الى ملفات dll الخاصة بالاولوان و هي
CHCOLOR.DLL

حملها من هنا و ضعها في مجلد Docs

http://www.mediafire.com/download/n8d79983u3lyrtl/CHCOLOR.rar


طبعا لا ننسى ان نعتمد الخيار رقم 0 وهو خاص باللون الوحيد للخلفية

Application.SetPageProperties("Page1", {BackgroundType= 0});

ثم نضع في زر لكود التالي:


wnx = Application.GetWndHandle();
result = DLL.CallFunction("AutoPlay\\Docs\\CHCOLOR.DLL", "SelectColor", wnx..",\"FFFFFF\",\"HEX\",\"192;;192;;192\",\"FALSE\"", DLL_RETURN_TYPE_STRING, DLL_CALL_STDCALL)
result = tonumber(String.TrimLeft(String.Left(result, String.Find(result, "::", 1, false)-1), "#"),16);
Application.SetPageProperties("Page1", {BackgroundColor = (result)});
---------------------------------------
الان اذا اردنا ان تتغير الخلفية بمجرد مرور الماووس على الصورة لتصبح هي هي خلفية البرنامج

اذا نستعدي ملف الصورة و نضعه في خلفية البرنامج
هذا الكود في On enter كل الصور التي وضعتها في صفحة البرنامج


Application.SetPageProperties("Page1", {BackgroundType= 2});
Application.SetPageProperties("Page1", {ImageFilename = Image.GetFilename(this)})
--------------------------------
كيف نجعل البرنامج يخير المستخدم في مجلد صور النظام الويندوز
اين نجد صور النظام في ملف الوبندوز في مجلد الويب في مجلد الخلفيات
نجعل كود يفتح المجلد و عندما يختار المستخدم صورة تصبح هي خلفية البرنامج
ضع هذا الكود في زر


img = Dialog.FileBrowse(true, "ÇÎÊÑ ÕæÑÉ ", "C:\\WINDOWS\\Web\\Wallpaper", "All Files (*.*)|*.*|", "", "jpg", false, false);

if (img[1] ~= "CANCEL") and (img[1] ~= nil) then
Application.SetPageProperties("Page1", {BackgroundType= 2});
Application.SetPageProperties("Page1", {ImageFilename = img[1]})
end
------------------------
للمزيد من الفهم هذا ملف مفتوح يمكنكم الاستعانة به

التحميل :

http://www.mediafire.com/download/wnpdx3954fbgwum/Background+change.apz

--------------
تحياتي

ياسرهتهت
04-05-2016, 05:01 AM
بسم الله الرحمن الرحيم
بارك الله فيك اخي المحترف
ملف رائع ومفيد
موفق بإذن الله ... لك مني أجمل تحية .

أبو يوسف
06-05-2016, 11:50 PM
بارك الله فيك اخانا المحترف على ما تبذله من جهد :abc_152:

abohmam
27-05-2016, 12:51 AM
جزاك الله خيرا أخانا المحترف

ماشاء الله مشروع رائع سلمت يمناك

:abc_022: