Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Cxgrid Konumunu Dinamik olarak Değiştirmek
#1
Merhabalar. Cxgrid nesnesini form üzerinde mouse ile sağa sola taşımak istiyorum Bunu Yaparken formun on create olayında cxgrid nesnesinin eventine dinamik olarak yazmak istiyorum
Onmouse move , Onmouse down , Onmouse UP gibi 
örnek kodum aşağıdaki gibi ama malesef çalıştıramadım.... NOT diğer nesneler için kod çalışıyor (Button, text vs...) Fakat cxgrid için çalışmıyor.

        if  PClassType=TcxGrid then
        begin
        // ShowMessage('Oldu');
          AGrid := TcxGrid(Screen.ActiveForm.FindComponent(CompName));
          AGrid.Hint:=CompName;
          AGrid.ShowHint:=true;
          with Agrid do
          begin
            OnMouseDown:=P_MouseDown;
            OnMouseMove:=P_MouseMove;
            OnMouseUp:=P_MouseUp;
          end;
        end;
Cevapla
#2
(08-12-2023, Saat: 02:18)endmuh Adlı Kullanıcıdan Alıntı: Merhabalar. Cxgrid nesnesini form üzerinde mouse ile sağa sola taşımak istiyorum Bunu Yaparken formun on create olayında cxgrid nesnesinin eventine dinamik olarak yazmak istiyorum
Onmouse move , Onmouse down , Onmouse UP gibi 
örnek kodum aşağıdaki gibi ama malesef çalıştıramadım.... NOT diğer nesneler için kod çalışıyor (Button, text vs...) Fakat cxgrid için çalışmıyor.

        if  PClassType=TcxGrid then
        begin
        // ShowMessage('Oldu');
          AGrid := TcxGrid(Screen.ActiveForm.FindComponent(CompName));
          AGrid.Hint:=CompName;
          AGrid.ShowHint:=true;
          with Agrid do
          begin
            OnMouseDown:=P_MouseDown;
            OnMouseMove:=P_MouseMove;
            OnMouseUp:=P_MouseUp;
          end;
        end;

Bu konuda yorumu olan yok mu? yada konuyu yeterince açık anlatamadım mı acaba?
Cevapla
#3
Tam anlayamamış olabilirsiniz fakat anladığım kadarıyla drag drop işlemi gibi birşey yapmak istiyorsanız. Aşağıdaki video sizin işinizi görecektir 
https://youtu.be/jG2AHvXo4R0?si=noE2zSVCbKzi_Kqo
PostgreSQL - Linux - Delphi, Poliüretan
WWW
Cevapla
#4
Bu şekilde hareket ettirebilirsin.

procedure TForm1.cxGrid1DBTableView1MouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
const
sc_DragMove=$F012;
begin
ReleaseCapture;
cxGrid1.Perform(WM_SYSCOMMAND,sc_DragMove,0);
end;
Cevapla
#5
(09-12-2023, Saat: 10:41)m_ekici Adlı Kullanıcıdan Alıntı: Bu şekilde hareket ettirebilirsin.

procedure TForm1.cxGrid1DBTableView1MouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
const
sc_DragMove=$F012;
begin
ReleaseCapture;
cxGrid1.Perform(WM_SYSCOMMAND,sc_DragMove,0);
end;

Harika...
Reb
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  cxGrid>FindPanel Arama Yapılacak Kolonları Belirleme hi_selamlar 15 9.843 30-03-2026, Saat: 12:33
Son Yorum: barutali
  CxGrid Türkçe karakter sorunu mur93 1 359 12-11-2025, Saat: 09:22
Son Yorum: cinarbil
Information Uygulama yönetici olarak mı çalışıyor? (runtime tespit etme) bakyuz 0 400 28-04-2025, Saat: 17:22
Son Yorum: bakyuz
  Projeye dosya olarak eklenmiş dosyanın içeriğini okumak yhackup 9 1.758 18-04-2025, Saat: 21:39
Son Yorum: bakyuz
  DBGrid1 Alanlarını Gizle Göster Olarak Kullanmak. OZCANK 4 1.080 05-04-2025, Saat: 22:02
Son Yorum: metemet



Konuyu Okuyanlar: 1 Ziyaretçi