mrh, bir konuda yardım etmenizi rica edecektim,
mouse button üzerinde geldiğinde ve ayrıldığında durumlarını gösteren bir kod var mı?
yani onmousemove ve onmouseleave gibi birşey...
iyi çalışmalar.......
onmousemove,onmouseleave
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: onmousemove,onmouseleave
Kulağı biraz tersten tutar gibi olsa da aşağıdaki yöntemle yapılabilir...
Kod: Tümünü seç
unit Unit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Label1: TLabel;
procedure Button1Enter(Sender: TObject);
procedure Button1Leave(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
type
TControlCrack=class(TControl)
published
property OnMouseEnter;
property OnMouseLeave;
end;
procedure TForm1.Button1Enter(Sender: TObject);
begin
Button1.Font.Style:=Button1.Font.Style+(.fsBold.);
end;
procedure TForm1.Button1Leave(Sender: TObject);
begin
Button1.Font.Style:=Button1.Font.Style-[fsBold];
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
TControlCrack(Button1).OnMouseEnter:=Button1Enter;
TControlCrack(Button1).OnMouseLeave:=Button1Leave;
end;
end.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .
Re: onmousemove,onmouseleave
merhabalar,
gönderdiğin kodları denedim ama
[Error] Unit1.pas(31): Property 'OnMouseEnter' does not exist in base class
[Error] Unit1.pas(32): Property 'OnMouseLeave' does not exist in base class
[Error] Unit1.pas(46): Cannot assign to a read-only property
[Error] Unit1.pas(46): Not enough actual parameters
[Error] Unit1.pas(47): Cannot assign to a read-only property
[Error] Unit1.pas(47): Not enough actual parameters
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
gibi hatalar veriyor..
gönderdiğin kodları denedim ama
[Error] Unit1.pas(31): Property 'OnMouseEnter' does not exist in base class
[Error] Unit1.pas(32): Property 'OnMouseLeave' does not exist in base class
[Error] Unit1.pas(46): Cannot assign to a read-only property
[Error] Unit1.pas(46): Not enough actual parameters
[Error] Unit1.pas(47): Cannot assign to a read-only property
[Error] Unit1.pas(47): Not enough actual parameters
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
gibi hatalar veriyor..
Re: onmousemove,onmouseleave
Merhaba,
Alternatif yöntem TButton üzerinden yeni bir bileşen oluşturmak olabilir. Böylece daha rahat kullanılabilir. Ancak, büyük projelerde mümkün mertebe standart dışı bileşen kullanılmak istenilmediği için örnek standart bileşen üzerine kod kullanılarak oluşturulmuştur.
Kullandığınız Delphi sürümünü belirtmemişsiniz. Örnek Delphi 10.1 Update 2 ile hazırlanmıştır. Eski sürümlerde de normal koşullarda unit isimleri düzeltilerek çalışacaktır.
Alternatif yöntem TButton üzerinden yeni bir bileşen oluşturmak olabilir. Böylece daha rahat kullanılabilir. Ancak, büyük projelerde mümkün mertebe standart dışı bileşen kullanılmak istenilmediği için örnek standart bileşen üzerine kod kullanılarak oluşturulmuştur.
Kullandığınız Delphi sürümünü belirtmemişsiniz. Örnek Delphi 10.1 Update 2 ile hazırlanmıştır. Eski sürümlerde de normal koşullarda unit isimleri düzeltilerek çalışacaktır.
- Dosya ekleri
-
- button_onmouseenter-leave.rar
- (1.27 KiB) 53 kere indirildi
Re: onmousemove,onmouseleave
merhabalar arkadaşım, ben delphi 7 kullanıyorum, gönderdiğin örneği indirdim ama çalışmadı form hatası veriyor,
bu hata ile ilgili olarak ne yapabilirim, yardımcı olursan sevinirim.
iyi çalışmalar.......
bu hata ile ilgili olarak ne yapabilirim, yardımcı olursan sevinirim.
iyi çalışmalar.......
Re: onmousemove,onmouseleave
Form üzerinde tek bir buton var. Başka birşey yok.
- Yeni bir proje oluşturun.
- Form üzerine TButton cinsinden bir buton yerleştirin. Nerede durduğu önemli değil.
- Projeyi kaydedin.
- Delphi'yi kapatın.
- Kaydettiğiniz projenin Unit1.pas dosyasını silin.
- Yukarıda göndermiş olduğum örnekteki Unit1.pas dosyasını kaydettiğiniz proje dizinine kopyalayın.
- Delphi'yi açıp aynı projeyi tekrar açın.
- Unit1.pas dosyası içinde uses kısmında bulunan ünite isimlerini Delphi 7 şekillerine değiştirerek kaydedin.
Yukarıdaki işlemlerden sonra örneği çalıştırabiliyor olmanız gerekli.
- Yeni bir proje oluşturun.
- Form üzerine TButton cinsinden bir buton yerleştirin. Nerede durduğu önemli değil.
- Projeyi kaydedin.
- Delphi'yi kapatın.
- Kaydettiğiniz projenin Unit1.pas dosyasını silin.
- Yukarıda göndermiş olduğum örnekteki Unit1.pas dosyasını kaydettiğiniz proje dizinine kopyalayın.
- Delphi'yi açıp aynı projeyi tekrar açın.
- Unit1.pas dosyası içinde uses kısmında bulunan ünite isimlerini Delphi 7 şekillerine değiştirerek kaydedin.
Yukarıdaki işlemlerden sonra örneği çalıştırabiliyor olmanız gerekli.
onmousemove,onmouseleave
Yardımların için teşekkür ederim arkadaşım.
İyi çalışmalar.
İyi çalışmalar.