PDA

View Full Version : جستجو در Caption مربوط به Label



1072300
شنبه 19 تیر 1389, 18:22 عصر
سلام به همه دوستان و اساتید محترم
چگونه می توان متن فارسی داخل کپشن لیبل را جستجو کرد رنگ لیبل را تغییر داد و با دو کلید بتوان به کپشن بعدی و قبلی رفت :افسرده::عصبانی++::متفکر:
متشکرم

SAASTN
یک شنبه 20 تیر 1389, 00:15 صبح
من که هیچی نفهمیدم:گیج:
ممکنه بیشتر توضیح بدی و اگه چندتا سواله کاملا از هم تفکیکشون کنی؟ (و همانا بهتر آنست که تو تاپیکای جداگونه مطرحشون کنی)

1072300
سه شنبه 22 تیر 1389, 00:03 صبح
متشکرم از پاسخ شما
بیشتر توضیح می دهم
مثال Label1 و Label2 و Label3 و... و Edit1 و Button1 و Button2 را بر روی فرم داریم Caption Label1 علی است و همچنین Caption Label2 محمد با پدرش آمد است و Caption Label3 امروز علی با مادرش در هوای سرد آمد است و ...
می خواهم اگر در edit 1 جمله محمد با پدرش آمد را تایپ کردیم و Button1 را فشار دادیم رنگ Label2 آبی شود و همچنین اگر کلمه علی را وارد کردیم رنگ Label1 آبی شود و اگر بر روی Button2 کلیک کردم رنگ لیبل قبلی را که معادل متن وارد شده در edit 1 است را آبی کند. به بیان ساده تر بتوانیم در محتوای Caption جستجو ( Find ) کنیم.
متشکرم.

yaseriran
سه شنبه 22 تیر 1389, 10:59 صبح
درود!
تمام برنامتون رو می تونید با شرط یا شرط های تو در تو جواب بگیرید.
برای نمونه چند خط زیر را در یک دکمه قرار دهید...


if Edit1.Text=Label1.Caption then

Label1.Color:=clBlue

else if Edit1.Text=Label2.Caption then

Label2.Color:=clBlue

else if Edit1.Text=Label3.Caption then

Label3.Color:=clBlue;


اگر تنهاترین تنها شوم، باز هم خدا هست...

Felony
سه شنبه 22 تیر 1389, 11:15 صبح
درود!
تمام برنامتون رو می تونید با شرط یا شرط های تو در تو جواب بگیرید.
برای نمونه چند خط زیر را در یک دکمه قرار دهید...


if Edit1.Text=Label1.Caption then

Label1.Color:=clBlue

else if Edit1.Text=Label2.Caption then

Label2.Color:=clBlue

else if Edit1.Text=Label3.Caption then

Label3.Color:=clBlue;


اگر تنهاترین تنها شوم، باز هم خدا هست...
اینطوری اگه تعداد Label ها و Button ها زیاد باشه کار سخت میشه ، یه نمونه کد براتون نوشتم :

var
i: Byte;
begin
for i:= 0 to Self.ComponentCount - 1 do
if Components[i] is TLabel then
if (Components[i] as TLabel).Caption= 'Label2' then
(Components[i] as TLabel).Font.Color:= clBlue;

1072300
سه شنبه 22 تیر 1389, 21:17 عصر
اینطوری اگه تعداد Label ها و Button ها زیاد باشه کار سخت میشه ، یه نمونه کد براتون نوشتم :

var
i: Byte;
begin
for i:= 0 to Self.ComponentCount - 1 do
if Components[i] is TLabel then
if (Components[i] as TLabel).Caption= 'Label2' then
(Components[i] as TLabel).Font.Color:= clBlue;

با تشکر از پاسخ شما
اما این جواب پاسخ گوی مشکل بنده نیست بنده قصد دارم متن داخل کپشن لیبل را جستجو کنم و اگر متنی مشابه متنی که کاربر در ادیت وارد کرده پیدا شد متن آن لیبل به خصوص آبی شود در صورتی که هر متنی که وارد ادیت برنامه شما می شود لیبل دو را آبی می کند باز هم از پاسخ شما متشکرم.

Felony
سه شنبه 22 تیر 1389, 21:53 عصر
با تشکر از پاسخ شما
اما این جواب پاسخ گوی مشکل بنده نیست بنده قصد دارم متن داخل کپشن لیبل را جستجو کنم و اگر متنی مشابه متنی که کاربر در ادیت وارد کرده پیدا شد متن آن لیبل به خصوص آبی شود در صورتی که هر متنی که وارد ادیت برنامه شما می شود لیبل دو را آبی می کند باز هم از پاسخ شما متشکرم.
:متعجب: خوب معلومه که این طوری میشه ! برای اینکه من نوشتم اگر Caption مساوی Label2 بود آبی بشه شما جاش متن کنترل Editت رو بزار :

var
i: Byte;
begin
for i:= 0 to Self.ComponentCount - 1 do
if Components[i] is TLabel then
if (Components[i] as TLabel).Caption= Edit1.Text then
(Components[i] as TLabel).Font.Color:= clBlue;