View Full Version : سوال: چگونه روی آیتمهای tree view  دستور بگذارم ؟
  
ALINAMAZI
پنج شنبه 30 آبان 1387, 08:26 صبح
با سلام
 
من روی فرم ام یک tree view  گذاشتم و به آن ایتمهای به این شکل:
 مدیر+
        :معاون+
                 کارشناسی+
                                 و....آیتمهای دیگر+
 
حالا میخواهم روی هر اسمی که مثلا مدیرکلیک کردیم فرم مربوط به آن باز شود وورود اطلاعات و سایر موارد مورد پردازش قرار گیرد
با تشکراز کمکی که میکنید
Ahmad Chehreghani
پنج شنبه 30 آبان 1387, 12:22 عصر
سلام 
اول به هر Node  يک StateIndex خواص اختصاص مي دي
بعد در Onchange مربوط به Tree اونو کنترل مي کني
مثلا:
procedure TForm1.TreeView1Change(Sender: TObject; Node: TTreeNode);
begin
  case Node.StateIndex of
    1:ShowMessage('1') ;
    2:ShowMessage('2') ;
    3:ShowMessage('3') ;
  end;
end;
ALINAMAZI
پنج شنبه 30 آبان 1387, 14:06 عصر
سلام 
اول به هر Node يک StateIndex خواص اختصاص مي دي
بعد در Onchange مربوط به Tree اونو کنترل مي کني
مثلا:
procedure TForm1.TreeView1Change(Sender: TObject; Node: TTreeNode);
begin
  case Node.StateIndex of
    1:ShowMessage('1') ;
    2:ShowMessage('2') ;
    3:ShowMessage('3') ;
  end;
end;
 با تشکر ازاینکه وقتتان را برای مشکل ما صرف کردید من میخواه وقتی 1 شد فرمم مثلا شماره یا اسم دارد باز شود چیزی که شما لطف کردید پیام نمایش میدهد
ممنونم اگر تکمیل کنید
Ahmad Chehreghani
پنج شنبه 30 آبان 1387, 17:17 عصر
اگه منظورت باز شدن فرم هستش که اول يونيت فرمتو Add ميکني اينظوري:
کليد ALT+F11 را ميزني 
بعد به جاي Showmessage اينو ميزاري
Form1.Show
راستي اين تاپيکتم از اينجا انتقال بده، اينجا بخش پايگاه داده هستش
ghabil
چهارشنبه 06 آذر 1387, 20:28 عصر
چرا روی ONChange؟ جای منطقی برای این کار روی OndblClick  هست
ALINAMAZI
پنج شنبه 07 آذر 1387, 08:13 صبح
چرا روی ONChange؟ جای منطقی برای این کار روی OndblClick هست
با تشکر از شما قابیلجان لطف یک دستور خوب برایش بنویس
ghabil
پنج شنبه 07 آذر 1387, 12:20 عصر
خواهش میکنم ، مثلا این :
procedure TForm1.TreeView1DblClick(Sender: TObject);
begin
  ShowMessage((Sender as TTreeview).Selected.Text);
end;
Ahmad Chehreghani
پنج شنبه 07 آذر 1387, 13:12 عصر
البته اگر بخواي يه فرم ديگه باز بشه آره اما در بقيه موارد خير بايد از Onchange استفاده کني.
من روي "فرم ديگه"  دقت نکردم
موفق و پيروز باشيد.
behnam-k
پنج شنبه 28 دی 1391, 01:21 صبح
البته درست و کاملش در ONCHANGE به این صورت جواب میده.
procedure TForm1.tv1Change(Sender: TObject; Node: TTreeNode);
begin
 case
   Node.StateIndex of
   1:Form2.Show;
   2:Form3.Show;
   3:Form4.Show;
 end;
end;
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.