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

نسخة كاملة : هل هناك طريقة لتغيير contextmenuللبرنامج
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
هل هناك طريقة لتغيير contextmenuللبرنامج يعني لما توضع البرنامج في المكتب في اي جهاز لما يضغط المستخدم بزر الفأرة الأيمن للبرنامج تطلع له القائمة اليتي وضعتها انت كأن تخفي نسخ ولصق مثلا
السلام عليكم و رحمة الله تعالى و بركاته:
استخدم الكائن PopupMenu و هو يعمل مع زر الفأرة الأيمن تلقائيا
كما يمكنك استخدام الكائن Panel و لكن نات من يتحكم في البرمجة بإظهاره و إخفائه متى شئت
بالتوفيق أخي
اخي اشكرك جزيلا لكن جربت popumenu لكن لم تنجح انا اسال هل هناك طريقة windows apiلتغيير القائمة الفرعية الخارجية للبرنامج وليس للمكونات الداخيلة
ممكن بتطبيق Global Hook على أحادث الفأرة .. لكن المشكل مع برامج الحماية ...
اذا كنت تريد منع المستخدم من نسخ برنامجك ... فهذه الفكرة لن تنجح معك .. بسبب أنه يمكن نسخ الملفات بعدة طرق
استخدام cmd , ctrl+c , استخدام برامج خارجية ... أو أضعف الايمان حرقه على سيدي ..Smile
شاهدت بعض البرامج التي عندما تضغط على زر الماوس الأيمن على ايقونتها تظهر لها قائمة خاصة
- بالطبع بدون تشغيل ذلك البرنامج
أعتقد أن هذا مايسأل عنه الأخ djamelcollo

ولكن للأسف لا أعرف الطريقة التي تقوم بها تلك البرامج لتعديل القائمة Sad
السلام عليكم
PHP كود :
type
  TForm1 
= class(TForm)
    
procedure FormCreate(Sender: TObject);
  private
    
procedure WMSysCommand(var message: TWMSysCommand);
      
message WM_SYSCOMMAND;
  public
    { 
Déclarations publiques }
  
end;


var
  
Form1: TForm1;

implementation

{$R *.dfm}

const
  
idInfo = $F200;

procedure TForm1.WMSysCommand(var message: TWMSysCommand);
begin
  inherited
;
  if 
message.CmdType and $FFF0 = idInfo then
    ShowMessage
('About...');
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  AppendMenu
(GetSystemMenu(Handle, False), MF_STRING, idInfo, 'Info');
end; 
لم اجد الطريقة الى حد الأن لكن اعتقد ان الحل في توابع آبي على العموم شكـــرا جزيلا لكــم واللهم ألف بين قلوب المسلمين