ورود

View Full Version : مشکل KeyListener



yasamin-98
چهارشنبه 10 اردیبهشت 1393, 20:35 عصر
یه بازی دارم که کلاس اصلیش اکستند از jframe هست و پنل تنظیمات روش قرار گرفته،تو این پنل با زدن دکمه play،کل پنل پاک میشه و یه پنل جدید که محیط بازی هست،ادد میشه بشه.الان تو این پنل جدید باید از keylistener استفاده کنم ولی کار نمیکنه.با این مثلا mouselistener کار میکنه روش.
برای keylistener از jtextfield استفاده میکنم و setfocusable هم فعاله.
راه حلی داره؟

vahid-p
جمعه 12 اردیبهشت 1393, 01:41 صبح
من خودمم یه بار این مشکل رو داشتم تا حدودی.
setFocusable داره میگه که میتونه focus بشه ( مثلا کلیک بشه روش و... ).
ولی شما باید محلی که قراره keylistener کار کنه، از دستور requestFocus استفاده کنید.
مثلا اگه JTextField هاتون تو پنل p باشن :
p.requestFocus();
از طرفی بهتره اول پنل قبلی رو p.requestFocus(false); کنید.

بهتره همونطور که خود جاوا داکش گفته حتما به این آدرس سر بزنید : http://docs.oracle.com/javase/tutorial/uiswing/misc/focus.html