PDA

View Full Version : سوال: نحوه صدا زدن تابع عمومی در فرم دیگر



reza69
دوشنبه 27 خرداد 1392, 21:22 عصر
سلام
این تابع رو چجوری تو یه فرم دیگه صدا بزنم؟

public void frmmainmenu_KeyDown(object sender, KeyEventArgs e)
{

drsina
دوشنبه 27 خرداد 1392, 21:35 عصر
Dll کن , بعد تو رفرنسا ادد کن .

reza69
دوشنبه 27 خرداد 1392, 21:42 عصر
Dll کن , بعد تو رفرنسا ادد کن .
چجوری dll کنم؟
بعد از add کردن چجوری استفاده کنم؟

drsina
دوشنبه 27 خرداد 1392, 21:55 عصر
بهتره تو Class Library بنویسی ....
رو گزینه ی Build برو تو Build Solution > به آدرس C:\Desktop\ClassLibrary1\ClassLibrary1\bin\Debug { آدرس فایلت حالا هرچی می خواد باشه } > توو Debug فایل Dll هم هست .

برای ادد کردن هم > Solution Explorer > بعد رو References راست کلیک کن برو رو Add references > بعد از Browse > فایل Dll رو ادد کن .
حالا فراخوانیش کن تو فرمت .

امیدوارم مفید باشه !

reza69
دوشنبه 27 خرداد 1392, 22:10 عصر
Build Solution رو میزنم ولی هیچ اتفاقی نمی افته تو آدرس bin/debug هم میرم خبری نیست

drsina
دوشنبه 27 خرداد 1392, 22:28 عصر
داداش تابعت رو تو Class Library تعریف کن درست میشه ! یعنی تو فرم تبدیل نکن .

reza69
دوشنبه 27 خرداد 1392, 22:31 عصر
داداش تابعت رو تو Class Library تعریف کن درست میشه ! یعنی تو فرم تبدیل نکن .
منظورتون اینکه از گزینه newitem رو بزنم بعد class رو انتخاب کنم؟

drsina
دوشنبه 27 خرداد 1392, 22:34 عصر
New project برو بعد اونجا Class Library هم هست

reza69
دوشنبه 27 خرداد 1392, 22:43 عصر
ارور میده
105733

drsina
دوشنبه 27 خرداد 1392, 22:54 عصر
ادد رفرنس برو تو .Net گزینه ی system.windows.forms رو ادد کن .

reza69
دوشنبه 27 خرداد 1392, 23:06 عصر
حالا از این فرم هایی که تو پروژه نیست ارور میگیره مثل این قطعه کد

frmmoshtari f = new frmmoshtari();
f.Show();

drsina
دوشنبه 27 خرداد 1392, 23:10 عصر
داداش کدرو بنویس .

reza69
دوشنبه 27 خرداد 1392, 23:18 عصر
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace shortcutkey
{
public class Class1
{
public void shortcutkey(object sender, KeyEventArgs e)
{

if ((e.Control == true) && (e.KeyCode == Keys.C))
System.Diagnostics.Process.Start("calc");

if ((e.Control == true) && (e.KeyCode == Keys.M))
{
frmmoshtari f = new frmmoshtari();
f.Show();
}

if ((e.Control == true) && (e.KeyCode == Keys.K))
{
frmkala f = new frmkala();
f.Show();
}

if ((e.Control == true) && (e.KeyCode == Keys.F))
{
frmfactor f = new frmfactor();
f.Show();
}

if ((e.Control == true) && (e.KeyCode == Keys.D))
{
frdpvajh f = new frdpvajh();
f.Show();
}

if ((e.Control == true) && (e.KeyCode == Keys.H))
{
frchek f = new frchek();
f.Show();
}

if ((e.Control == true) && (e.KeyCode == Keys.L))
{
frlistnarm f = new frlistnarm();
f.Show();
}

if ((e.Control == true) && (e.KeyCode == Keys.R))
{
frfnarm f = new frfnarm();
f.Show();
}

if ((e.Control == true) && (e.KeyCode == Keys.E))
{
frersalbeg f = new frersalbeg();
f.Show();
}

if ((e.Control == true) && (e.KeyCode == Keys.B))
{
frkkharab f = new frkkharab();
f.Show();
}

if ((e.Control == true) && (e.KeyCode == Keys.T))
{
frtamir f = new frtamir();
f.Show();
}

if ((e.Control == true) && (e.KeyCode == Keys.S))
{
frforushande f = new frforushande();
f.Show();
}

if ((e.Control == true) && (e.KeyCode == Keys.I))
{
frbedbes f = new frbedbes();
f.Show();
}

if ((e.Control == true) && (e.KeyCode == Keys.Y))
{
frnote f = new frnote();
f.Show();
}

if ((e.Control == true) && (e.KeyCode == Keys.A))
{
frsood f = new frsood();
f.Show();
}

if (e.KeyCode == Keys.F1)
{
System.Diagnostics.Process.Start(System.IO.Path.Co mbine(Environment.CurrentDirectory, "parsimobile help.pdf"));
}

}
}
}

drsina
دوشنبه 27 خرداد 1392, 23:35 عصر
داداش اینارو توابع رو جایی دیگه تعریف کردی ؟؟؟

reza69
دوشنبه 27 خرداد 1392, 23:37 عصر
داداش اینارو توابع رو جایی دیگه تعریف کردی ؟؟؟
منظورت از جایی دیگه چیه؟کدوم توابع؟

drsina
دوشنبه 27 خرداد 1392, 23:52 عصر
آخه داری چیزی که کلان برا سیستم Override نشده رو مقدار دیفالت میدی !
یه تاپیک دیگه بزن ؛ بنویس مشکل در اجرای کد .
کل چیزی رو که نوشتی اتچ کن , بعد اساتید مشکلتو میگن .

reza69
سه شنبه 28 خرداد 1392, 08:17 صبح
ممنون drsina
دوستان اگه کسی میتونه کمک کنه
میخوام این کد رو به صورت یه تابع در بیارم و بعد تو هر فرم صداش بزنم.