editbox ı hizalama
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
editbox ı hizalama
editboxta yazıyı sağa ve ortaya nasıl hizalayabilirim?
öğrenmek, zorlukları yenmektir.
İlüzyonla...
- Daha önce forumda aynı soruya cevap vermiştim... TEdit yerine TMemo kullanıp pratik çözebilirsin...
forum linki burada
viewtopic.php?t=1441ᨷ



- Daha önce forumda aynı soruya cevap vermiştim... TEdit yerine TMemo kullanıp pratik çözebilirsin...
forum linki burada
viewtopic.php?t=1441ᨷ
Merhaba;
Edit'e Sağa Dayalı Özelliği Verme
TEdit1 = class(TEdit)
public
procedure CreateParams(var Params: TCreateParams); Override;
end;
procedure TEdit1.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
Params.Style := Params.Style or ES_MULTILINE or ES_RIGHT;
end;
şeklinde sağa dayalı yapabilirsin ama ortalamayı daha bulamadım. Eğer bulursam yine bilgi veririm. Umarım işine yarar kolay gelsin...
Edit'e Sağa Dayalı Özelliği Verme
TEdit1 = class(TEdit)
public
procedure CreateParams(var Params: TCreateParams); Override;
end;
procedure TEdit1.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
Params.Style := Params.Style or ES_MULTILINE or ES_RIGHT;
end;
şeklinde sağa dayalı yapabilirsin ama ortalamayı daha bulamadım. Eğer bulursam yine bilgi veririm. Umarım işine yarar kolay gelsin...
Var olmaya değer her şey bilinmeye de değerdir. Çünkü bilgi varlığın bir imgesidir. Onda iyi ve kötü aynı anda bulunmaktadır...
- sadettinpolat
- Moderator
- Mesajlar: 2131
- Kayıt: 07 Ara 2003 02:51
- Konum: Ankara
- İletişim:
Windows.pas adlı dosyada yer alan aşağıdaki tanımlardan faydalanabilirsiniz.
çözüme gelince en iyisi Biltesin örneğinde olduğu gibi yeni bir sınıf türeterek bunu kullanmak. hatta biraz araştırılırsa hazır oluşturulmuş böyle bir bileşende bulunabilir. gerçi yazılacak çok fazla bir kod yok ama...
böyle bir bileşen bulduktan sonra bul-değiştir yöntemi ile dfm ve pas dosyalarındaki tüm TEditler uygun şekilde yeni bileşenle değiştirilebilir.
ikinci çözüm ise başka bir unitte uygun şekilde bir TEdit sınıfı tanımlanır ve TEdit şeklindeki tanımlamarın tümü UnitAdi.TEdit şeklinde bul - dğeiştir yapılır.
benim tavsiyem
şeklinde yeni bir bileşen oluşturp kullanmak...
Kod: Tümünü seç
{ Edit Control Styles }
{$EXTERNALSYM ES_LEFT}
ES_LEFT = 0;
{$EXTERNALSYM ES_CENTER}
ES_CENTER = 1;
{$EXTERNALSYM ES_RIGHT}
ES_RIGHT = 2;
{$EXTERNALSYM ES_MULTILINE}
ES_MULTILINE = 4;
{$EXTERNALSYM ES_UPPERCASE}
ES_UPPERCASE = 8;
böyle bir bileşen bulduktan sonra bul-değiştir yöntemi ile dfm ve pas dosyalarındaki tüm TEditler uygun şekilde yeni bileşenle değiştirilebilir.
ikinci çözüm ise başka bir unitte uygun şekilde bir TEdit sınıfı tanımlanır ve TEdit şeklindeki tanımlamarın tümü UnitAdi.TEdit şeklinde bul - dğeiştir yapılır.
benim tavsiyem
Kod: Tümünü seç
TXXXEdit = class(TEdit)
public
procedure CreateParams(var Params: TCreateParams); Override;
end;
procedure TXXXEdit.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
Params.Style := Params.Style or ES_CENTER;
end;
- sadettinpolat
- Moderator
- Mesajlar: 2131
- Kayıt: 07 Ara 2003 02:51
- Konum: Ankara
- İletişim:
http://bdn.borland.com/article/0,1410,16587,00.html
ufak bir aramayla örnek bir bileşen buldum.
bunu bileşeni kullanabilirsiniz.
ufak bir aramayla örnek bir bileşen buldum.
bunu bileşeni kullanabilirsiniz.
Kod: Tümünü seç
unit JusEdit;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs,
StdCtrls;
type
TJustaEdit = class(TEdit)
private
{ Private declarations }
fAlignment : TAlignment;
protected
{ Protected declarations }
procedure SetAlignment(Value: TAlignment);
public
{ Public declarations }
procedure createParams(var Params : TCreateParams); override;
published
{ Published declarations }
property Alignment: TAlignment read FAlignment write SetAlignment
default taLeftJustify;
end;
procedure Register;
implementation
procedure TJustaEdit.CreateParams(var Params : TCreateParams);
var
x : Longint;
begin
inherited CreateParams(Params);
case fAlignment of
tarightjustify: x := es_right;
taleftjustify : x := es_left;
tacenter : x := es_center;
end;
params.style := params.style or x;
end;
procedure TJustaEdit.SetAlignment;
begin
if FAlignment <> Value then
begin
FAlignment := Value;
RecreateWnd;
end;
end;
procedure Register;
begin
RegisterComponents('Samples', [TJustaEdit]);
end;
end.