PDA

View Full Version : menuItem



yegane8
چهارشنبه 14 تیر 1391, 11:50 صبح
سلام
این menuItem ها به چه دردی می خورن و چرا ActionListener ندارند
اگه دارند پس چرا وقتی 2بار روش کلیک میکنم به اوون قسمت نمی روند؟

spiderman200700
چهارشنبه 14 تیر 1391, 13:59 عصر
هم MenuItem و هم JMenuItem دارای متد addActionListener هستند.

با دوبار کلیک کدوم قسمت برن؟

yegane8
پنج شنبه 15 تیر 1391, 00:49 صبح
هم MenuItem و هم JMenuItem دارای متد addActionListener هستند.



میشه بگویید چطوری?
مثلا در MenueItem من اصلا نتوستم واسش actionListener پیدا کنم
لطفا در مورد addActionListener بیشتر توضیح بدهید



با دوبار کلیک کدوم قسمت برن؟
منظورم اینه که وقتی متلا روی یک button دوبار کلیک میکنیم به قسمت actionListenet میره و اونجا کد مورد نظر رو می زنیم
اما در jmenueItem همچین کاری نمیشه کرد
با تشکر

spiderman200700
پنج شنبه 15 تیر 1391, 01:27 صبح
فکر میکنم این کد به هر دو سوالتون جواب میده:
JMenuItem menuItem=new JMenuItem("menuName");
menuItem.addActionListener(new ActionListener() {

@Override
public void actionPerformed(ActionEvent e) {
// کد هایی که قراره موقع کلیک کردن روی منوآیتم اجرا بشن
}
});

yegane8
پنج شنبه 15 تیر 1391, 15:37 عصر
فکر میکنم این کد به هر دو سوالتون جواب میده:
JMenuItem menuItem=new JMenuItem("menuName");
menuItem.addActionListener(new ActionListener() {

@Override
public void actionPerformed(ActionEvent e) {
// کد هایی که قراره موقع کلیک کردن روی منوآیتم اجرا بشن
}
});
من این کد رو برای اینکار زدم compileError نداره اما وقتی run میکنم روی menuItem1 کلیک میکنم هیچ اتفاقی نمی افتد و به کلاس word() نمی رود
private void jMenuItem1ActionPerformed(java.awt.event.MouseEven t evt) throws SQLException {
jMenuItem1.addActionListener(new ActionListener() {

@Override
public void actionPerformed(ActionEvent e) {
try {
new word();
} catch (SQLException ex) {
ex.printStackTrace();
}

}
});

}
مشکل کجاست؟

spiderman200700
پنج شنبه 15 تیر 1391, 17:11 عصر
این کار که اصلا اشتباهه
کل کتدی رو که نوشتید پاک کنید و این کد رو دقیقا بعد از خط تعریف jMenuItem1 بنویسید:
jMenuItem1.addActionListener(new ActionListener() {

@Override
public void actionPerformed(ActionEvent e) {
try {
new word();
} catch (SQLException ex) {
ex.printStackTrace();
}

}
});

yegane8
پنج شنبه 15 تیر 1391, 18:15 عصر
این کار که اصلا اشتباهه
کل کتدی رو که نوشتید پاک کنید و این کد رو دقیقا بعد از خط تعریف jMenuItem1 بنویسید:
jMenuItem1.addActionListener(new ActionListener() {

@Override
public void actionPerformed(ActionEvent e) {
try {
new word();
} catch (SQLException ex) {
ex.printStackTrace();
}

}
});

کاری که گفتید رو انجام دادم اما بازهم به کلاس word نرفت و با زدن jMenuItem1 اتفاقی نیافتاد :(

yegane8
پنج شنبه 15 تیر 1391, 18:54 عصر
ممنون این مشکلم حل شد
اینو زدم
private void jMenuItem2ActionPerformed(java.awt.event.ActionEve nt evt) {
try {
// TODO add your handling code here:
new word();
} catch (SQLException ex) {
ex.printStackTrace();
}

}

spiderman200700
پنج شنبه 15 تیر 1391, 19:48 عصر
شما چون با ابزار های گرافیکی netbeans کار میکنید فرکت کدی که من دادم کار نمیکرد.
موفق باشید