delphi4arab منتديات دلفي للعرب

نسخة كاملة : AppFace مكونات Skins مختلفة
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم

هي مكتبات يمكن استخدامها مع أي من لغات البرمجة VB.Net Visual Basic C ++ Builder
C# Delphi VB6 من خلال Win32 SDK program GUI

تعتمد على تهيئة طبيعية لواجهة البرنامج من خلال مكتبة DLL

للاستخدام: لست بحاجة إلى تثبيت شيء على واجهة دلفي، يكفي إرفاق الملف appface.dll مع برنامج وإضافة سطرين في ملف المشروع.

الموقع:
كود :
http://www.appface.com/eng/

ملاحظة: المشروع تجاري (بما في ذلك النسخة Standard Edition غيره أنه يمكن استخدامها في حدود...)

بالتوفيق.
ماهي السطرين المراد كتابتهم في البرنامج
ولك جزيل الشكر
أولا قم بنسخ المكتبة appface.dll الى مجلد البرنامج
ثانيا أضف الستايل الى مجلد Skins بجانب البرنامج( من أجل التنظيم لا غير)
ثالثا : ضع هذا أضف المكتبة UnitAppface.pas الى مجلد المشروع
رابعا ضع هذا الكود في المشروع قبل انشاء أي فورم
PHP كود :
SkinStart('skins\office2007_af.urf',3,'',1,0,0); 
PHP كود :
program SkinApp;

uses
  Forms
,
  
MainDlg in 'MainDlg.pas' {Main},
  
UnitAppface in 'UnitAppface.pas';

{
$R *.res}

begin
//--------------------------------------------------
    //For AppFace 
    //Line 1  , load the skin
 
SkinStart('skins\office2007_af.urf',3,'',1,0,0);
    
//--------------------------------------------------
  
Application.Initialize;
  
Application.CreateForm(TMain, Main);
  
Application.Run;
//--------------------------------------------------
    //For AppFace
    //Line 2  , cleanup 
 
SkinRemove() ;
//--------------------------------------------------

end. 

لكن للأسف فلم أجد تعريف الدوال للغة الأسمبلي , لذلك أعدت كتابة UnitAppface حتى يتوافق مع MASM

PHP كود :
;appface.inc -> By SMP3 :) 
;
Have Fun :)
;
My Blog: DelphiNews.WordPress.Com

SkinStart PROTO STDCALL 
:DWORD,:DWORD,:DWORD,:DWORD,:DWORD,:DWORD
SkinThread PROTO stdcall 
SkinWindowSet PROTO stdcall 
:DWORD,:DWORD
BkCreate PROTO stdcall 
:DWORD
BkDelete PROTO stdcall
:DWORD
BkDraw PROTO stdcall 
:DWORD,:DWORD,:DWORD,:DWORD 
SkinRemove PROTO stdcall 
SkinWindowSetEx PROTO STDCALL 
:DWORD,:DWORD,:DWORD,:DWORD,:DWORD,:DWORD,:DWORD
 
;--------------------------------------------------------------------------
;
Defines
;The client frame window will receive this message when user click a frame button
 WM_FRAME_BUTTON   equ     764h 
;

;
Send this message to the hyperlink control to modify the URL
 WM_HYPERLINK_URL    equ   765h 
;

;
Send this message to display a transparent GIF on a SKIN_CLASS_STATIC control
 WM_TRANSPARENT_GIF  equ   765h 
;

;
Give users a chance to do custom draw for the skinned windows ,
;
user can draw anything they want on the AppFace background in the callback function body .
;
typedef int (CALLBACK *PAINTCUSTOMPROC)(HDC , HWND) ;


  ;For 
WM_FRAME_BUTTON  WPARAM
 FRAME_BUTTON_MAX         equ    1  
;
 
FRAME_BUTTON_RESTORE     equ    2  ;
 
FRAME_BUTTON_MIN         equ    3  ;
 
FRAME_BUTTON_CLOSE       equ    4  ;

  ;For 
custom frame button
 FRAME_BUTTON_CUSTOMBASE  equ 
$200  ;The custom control button

 FB_COMMAND_REMOVE        equ    0   
;
 
FB_COMMAND_ENABLE        equ    1   ;
 
FB_COMMAND_DISABLE       equ    2   ;
 
FB_COMMAND_CHECK         equ    3   ;
 
FB_COMMAND_UNCHECK       equ    4   ;


;
Load URF,and skin windows automatically
 GTP_LOAD_FILE            equ    1   
;
 
GTP_LOAD_MEMORY          equ    2   ;
 
GTP_LOAD_RESOURCE        equ    3   ;
;
Load the URF into memory only ,but do not skin any windows,
;
until users call SkinWindowSet
 GTP_LOAD_FILE_ONLY       equ    4   
;
 
GTP_LOAD_MEMORY_ONLY     equ    5   ;
 
GTP_LOAD_RESOURCE_ONLY   equ    6   ;

;
The window was created by which development tool
 WINDOW_TYPE_AUTOFILTER   equ    0   
;;Auto detected by appface
 WINDOW_TYPE_SDK          equ    1   
;
 
WINDOW_TYPE_VC           equ    1   ;
 
WINDOW_TYPE_VB6          equ    2    ;
 
WINDOW_TYPE_BCB          equ    3   ;
 
WINDOW_TYPE_DELPHI       equ    3   ;
 
WINDOW_TYPE_NET          equ    4   ;

;
Windows skin type,used for SkinWindowSet function
 
SKIN_CLASS_NOSKIN         equ   0   ;;Do not skin a window ,but allocate the needed resource for it

  
;Windows
 SKIN_CLASS_AUTOFILTER     equ   1   
;;AppFace skin this window automatically

 SKIN_CLASS_PAUSESKIN      equ   2   
;;Pause skin for a special window,but do not free resource
 SKIN_CLASS_REDOSKIN       equ   3   
;;Redo skin from pause state
 SKIN_CLASS_REMOVESKIN     equ   4   
;;Unskin a window and remove all the allocated skin resource for it at the same time
 SKIN_CLASS_NOSKINEX       equ   5   
;;Unskin a window and all the child windows of it


 SKIN_CLASS_UNKNOWN        equ   6   
;
 
SKIN_CLASS_AUTOFILTEREX   equ   7   ;
 
SKIN_CLASS_SCROLLWIN      equ  10    ;
 
SKIN_CLASS_SCROLLWINBORDER equ  11   ;
 
SKIN_CLASS_FRAMEWIN       equ 101   ;
 
SKIN_CLASS_FRAMEDIALOG    equ 102   ;
 
SKIN_CLASS_INSIDEDIALOG   equ 103   ;
 
SKIN_CLASS_MDICLIENT      equ 104   ;
 
SKIN_CLASS_SCROLLPANEL    equ 105   ;
 
SKIN_CLASS_FRAMEBACKGROUND equ 106   ;

  ;
Controls
 SKIN_CLASS_COMBOBOX       equ 201   
;
 
SKIN_CLASS_DATETIME       equ 202   ;
 
SKIN_CLASS_HEADER         equ 203   ;
 
SKIN_CLASS_GROUPBOX       equ 204   ;
 
SKIN_CLASS_IMAGEBUTTON    equ 205   ;
 
SKIN_CLASS_MENU           equ 206   ;
 
SKIN_CLASS_PROGRESS       equ 207   ;
 
SKIN_CLASS_PUSHBUTTON     equ 208   ;
 
SKIN_CLASS_SCROLLBAR      equ 209   ;
 
SKIN_CLASS_SLIDER         equ 210   ;
 
SKIN_CLASS_SPIN           equ 211   ;
 
SKIN_CLASS_SPILTER        equ 212   ;
 
SKIN_CLASS_STATUSBAR      equ 213   ;
 
SKIN_CLASS_TAB            equ 214   ;
 
SKIN_CLASS_TEXT           equ 215   ;
 
SKIN_CLASS_TOOLBAR        equ 216   ;
 
SKIN_CLASS_TOOLBAREX      equ 217   ;
 
SKIN_CLASS_TOOLBARPANEL   equ 217   ;
 
SKIN_CLASS_PANEL          equ 218   ;
 
SKIN_CLASS_PANELEX        equ 219   ;
 
SKIN_CLASS_PANELELIXIR    equ 220   ;
 
SKIN_CLASS_HYPERLINK      equ 221   ;
 
SKIN_CLASS_STATUSBAR_VB6  equ 222   ;
 
SKIN_CLASS_SHAPEWIN       equ 223   ;
 
SKIN_CLASS_CHECKBUTTON    equ 224   ;
 
SKIN_CLASS_RADIOBUTTON    equ 225   ;
 
SKIN_CLASS_READONLYEDIT   equ 226   ;

 
SKIN_CLASS_FRAMEBTN       equ 227   ;
 
SKIN_CLASS_SLIDEREX       equ 228   ;

 
SKIN_CLASS_EDITBOX        equ  229  ;
 
SKIN_CLASS_LISTBOX        equ  230  ;
 
SKIN_CLASS_COMBOBOXEX     equ  231  ;
 
SKIN_CLASS_LISTVIEW       equ  232  ;
 
SKIN_CLASS_TREE           equ  233  ;

 
SKIN_CLASS_TOOLBARREAL    equ  301  ;
 
SKIN_CLASS_SHADOW         equ  302  ;

 ;
Only for SkinWindowSetEx
 SKIN_SET_TRANSPARENT      equ 601   
;
 
SKIN_SET_THEME_COLOR      equ 602   ;
 
SKIN_SET_EFFECT           equ 603   ;
 
SKIN_SET_REDRAW           equ 604   ;

 
SKIN_SET_PAINTCUSTOMPROC  equ 605   ;
 
SKIN_SET_NCPAINTCUSTOMPROC equ 606   ;

 
SKIN_SET_SPECIAL_TOOL     equ 610   ;

;
Only for VB6 scrollbar control
 SKIN_SET_VB6_SCROLL_INFO  equ 611   
;

;
allow shadow effect for all the frame windows and pop menus
 SKIN_SET_SHADOW_ENABLE    equ 612   
;

;
disable shadow effect for all the frame windows and pop menu(by default)
 
SKIN_SET_SHADOW_DISABLE   equ 613   ;

 
SKIN_SET_UNSKIN           equ 660   ;
 
SKIN_SET_UNICODE_URF_FONT equ 661   ;

;
Pause all the skin functions of AppFace for all windows in the target process,
;
SKIN_CLASS_PAUSESKIN only pause skin functions for one special window .
;
These two parameters do not release the allocated resource both.
 
SKIN_SET_PAUSESKIN        equ 662   ;

;
Restore skin functions from SKIN_SET_PAUSESKIN state
 SKIN_SET_REDOSKIN         equ 663    
;

;
Indicate skin or not skin VC static control automatically
 SKIN_SET_VCLABEL          equ 664    
;

;
To control the custom frame button
 SKIN_SET_FRAMEBTN         equ 665    
;

;
Create bk object from another URF
 SKIN_GET_BK               equ 701   
;

 ;
Only for SKIN_SET_EFFECT
 EFFECT_IN_SPIN             equ  2   
;
 
EFFECT_IN_VORTEX           equ  3   ;
 
EFFECT_IN_SCATTER          equ  4   ;
 
EFFECT_IN_STAR             equ  5   ;
 
EFFECT_IN_RAZZLE           equ  6    ;

 
EFFECT_OUT_SPIN            equ 52   ;
 
EFFECT_OUT_VORTEX          equ 53   ;
 
EFFECT_OUT_SCATTER         equ 54   ;
 
EFFECT_OUT_STAR            equ 55   ;
 
EFFECT_OUT_RAZZLE          equ 56   ;


  ;
Background type
 BK_DIALOGPANEL             equ  1   
;
 
BK_MDICLIENT               equ  2   ;
 
BK_MDICHILD                equ  3   ;
 
BK_SPLITTER                equ  4   ;
 
BK_STATUSBAR               equ  5   ;
 
BK_MENUBARBK               equ  6   ;
 
BK_MENUBARHOVER            equ  7   ;
 
BK_MENUBARDOWN             equ  8   ;
 
BK_MENU_BK                 equ  9   ;
 
BK_MENU_HOVER              equ 10   ;
 
BK_SCROLL_BK               equ 11   ;
 
BK_SLIDER_CHANNEL_H        equ 12   ;
 
BK_SLIDER_CHANNEL_V        equ 13   ;
 
BK_PROGRESS_H_NORMAL       equ 14   ;
 
BK_PROGRESS_V_NORMAL       equ 15   ;
 
BK_PROGRESS_H_OVER         equ 16   ;
 
BK_PROGRESS_V_OVER         equ 17   ;

 
BK_IMAGE_ARROW         equ   1001   ;
 
BK_CUSTOM              equ  10000   ;

 
ARROW_UP_NORMAL            equ  1   ;
 
ARROW_UP_DOWN              equ  2   ;
 
ARROW_DOWN_NORMAL          equ  3   ;
 
ARROW_DOWN_DOWN            equ  4   ; 

مرفق مثال للاستخدام Big Grin