View Full Version : سوال: چطور میشه متن بدون رنگ پس زمینه نوشت؟
mbshareat
پنج شنبه 30 آبان 1387, 13:56 عصر
من هم TextOut رو امتحان کردم هم TextRect رو امتحان کردم. زمینه متن هیچکدوم Transparent نبودند.:متعجب:
لطفا منو راهنمایی کنین!
vcldeveloper
پنج شنبه 30 آبان 1387, 16:32 عصر
کجا استفاده کردید؟ روی فرم؟ یا جای دیگه؟
mbshareat
پنج شنبه 30 آبان 1387, 18:09 عصر
توی فرم و Label و Image ترسیم کردم.:متفکر:
اینم از سورس:چشمک:
...
type
TForm1 = class(TForm)
Button1: TButton;
Label1: TLabel;
Image1: TImage;
procedure Button1Click(Sender: TObject);
Procedure WriteText(Can:TCanvas;C:TColor);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
WriteText(Canvas,clred);
WriteText(Label1.Canvas,clGreen);
WriteText(image1.Canvas,clBlue);
end;
Procedure TForm1.WriteText(Can:TCanvas;C:TColor);
Begin
Can.Font.Color:=C;
Can.Brush.Color:=clYellow;
Can.TextOut(10,10,'My Test 1');
Can.Textrect(rect(30,30,80,50),30,30,'My Test 2');
End;
....
saeed_d
جمعه 01 آذر 1387, 16:06 عصر
سلام
چرا از Label استفاده نميكنيد كه خاصيت Transparent دارد
vcldeveloper
جمعه 01 آذر 1387, 16:43 عصر
به Canvas.Brush.Color چرا مقدار میدید؟
mbshareat
شنبه 02 آذر 1387, 11:01 صبح
آقای Saeed_d ممنونم که نظر دادین راستش فکر کنم به فکرم رسید! ولی باورم نمی شد Label چنین قابلیتی داشته باشه.این خصوصیت در برچسب، واقعی نیست.:ناراحت:
من یه Shape روی فرم گذاشتم ویه Label از نوع شفاف روش گذاشتم دیدم رنگ بک گراند نداره که روی Shape رو بگیره ولی بعدش توی رویداد کلیک Label ترسیم خط تعبیه کردم و بعد مختصات Label رو تغییر دادم که روی خط بیفته دیدم رنگ زمینه متن هم داره و خطو خراب میکنه!:اشتباه:
آقای کشاورز عزیز فرموده بودید :
به Canvas.Brush.Color چرا مقدار میدید؟
برای اینکه اگه بخوام از ترکیب طراحی و متن استفاده کنم طبیعتا ممکنه قبل از استفاده از TextOut جایی رو رنگ کرده باشم .در هر صورت اگه بخوام از یه Canvas بدون طرح استفاده کنم خصوصیت Transparent به چه درد میخوره؟از TransparentColor هم که همیشه نمیشه استفاده کرد!:متعجب:
vcldeveloper
شنبه 02 آذر 1387, 15:54 عصر
برای اینکه اگه بخوام از ترکیب طراحی و متن استفاده کنم طبیعتا ممکنه قبل از استفاده از TextOut جایی رو رنگ کرده باشم .در هر صورت اگه بخوام از یه Canvas بدون طرح استفاده کنم خصوصیت Transparent به چه درد میخوره؟از TransparentColor هم که همیشه نمیشه استفاده کرد!
باید موقع رسم متن Brush.Style := bsClear باشه.
mbshareat
یک شنبه 03 آذر 1387, 12:27 عصر
باید موقع رسم متن Brush.Style := bsClear باشه.
آقا ممنونم . امتحان کردم جواب داد.:تشویق:
من قبلا با VB کار می کردم و الان دارم با دلفی 6 کار می کنم .نمی دونم چطور میشه از توابع کتابخانه ای خارج از دلفی مثلا +GDI یا حتی از توابع API استفاده کنم .:خجالت:
راستش من خیلی وقت نیست با دلفی کار می کنم و عاشق کارای گرافیکی هستم. می دونم دستورات زبانهای برنامه نویسی در زمینه گرافیک کافی نیستند ولی گاهی تنها راه رسیدن به آرزوهای کوچک برنامه نویسیه.:لبخندساده:
آقای کشاورز عزیز عاجزانه درخواست دارم به تاپیکام جواب بدین. اکثرشون بی جواب یا ناتموم! موندن. راستش کم کم دارم از جواب گرفتن دلسرد می شم!:افسرده:
دوست آن است گه گیرد دست دوست در پریشان حالی و در ماندگی
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.