ورود

View Full Version : Shift + Number



soheril.server
دوشنبه 06 اردیبهشت 1389, 23:35 عصر
با سلام
یه سوال شاید خیلی ساده:
می خوام بگم هرجای برنامه اگه Shift به اضافه ی یک حرف یا عددی رو وارد کرد مثلا" فلان کار رو بکن...چطور باید این شرط رو بنویسم؟:لبخندساده::تشویق::چ مک:

ermia2008
چهارشنبه 08 اردیبهشت 1389, 23:16 عصر
با سلام
یه سوال شاید خیلی ساده:
می خوام بگم هرجای برنامه اگه Shift به اضافه ی یک حرف یا عددی رو وارد کرد مثلا" فلان کار رو بکن...چطور باید این شرط رو بنویسم؟:لبخندساده::تشویق::چ مک:

سلام
یه راه سادش اینه که به برنامت یک menuBar اضافه کنی و یک آیتم به اون اضافه کنی و توی رویداد actionPerformed اون کاری که میخوای رو انجام بدی. شورت کاتش رو هم میتونی همونجا هرترکیبی که میخوای بذاری. از اونجایی که می خواید در هر جای برنامه این شرت کات کار کنه،با این کار هر جای فرم که باشی این شرت کات کار میکنه و محدود به کامپوننت خاصی نخواهد بود!
موفق باشید

javanerd
پنج شنبه 09 اردیبهشت 1389, 06:54 صبح
با سلام
یه سوال شاید خیلی ساده:
می خوام بگم هرجای برنامه اگه Shift به اضافه ی یک حرف یا عددی رو وارد کرد مثلا" فلان کار رو بکن...چطور باید این شرط رو بنویسم؟:لبخندساده::تشویق::چ مک:

اول باید یک کلاس تعریف کنید که KeyListener رو پیاده‌سازی کنه. و تابع keyTyped رو طوری که می‌خواهید پیاده‌سازی کنید:

class CustomKeyListener implements KeyListener{

public void keyPressed(KeyEvent keyEvent) {
// TODO Auto-generated method stub

}

public void keyReleased(KeyEvent keyEvent) {

}

public void keyTyped(KeyEvent keyEvent) {
if (keyEvent.isShiftDown() && (keyEvent.getKeyCode() == KeyEvent.VK_1)) {
// do what you want
}

}
}بعد می‌تونید این Listener رو به هر چیزی که دوست داشتید اضافه کنید:


KeyListener customKeyListener = new CustomKeyListener();
JTextField textField = new JTextField();
textField.addKeyListener(customKeyListener);

jeus
جمعه 10 اردیبهشت 1389, 22:46 عصر
دوست من مورد بالا رو برای container هم میتونی اعمال کنی JPanel و JForm و یا JDialog و ...