PDA

View Full Version : textfield



sahar_2008
پنج شنبه 03 آبان 1386, 23:25 عصر
با سلام
من میخوام با جاوا یه تکست فیلد ایجاد کنم.اما نمیدونم چه جوری باید تکست فیلد رو بکشم که
کاربر بتونه کاراکتر رو وارد کنه؟اگر کسی میدونه لطفا راهنمایی کنه.
ممنون
(البته میخوام خودم تکست فیلد رو بنویسم نه اینکه از تکست فیلد جاوا استفاده کنم)

rezaTavak
جمعه 04 آبان 1386, 11:14 صبح
چرا می خواهید خودتان بنویسید؟

اینکار نیاز به چیزهای زیادی دارد و سرعت را کم خواهد کرد.

سورس تمام کلاسها در src.zip است نگاه کنید.

sahar_2008
جمعه 04 آبان 1386, 22:01 عصر
با سلام
من اون سورس رو دیدم اما زیاد متوجه نشدم و طولانی بود خیلی.
من باید برنامه تحویل بدم به استاد.انتظار ندارید که یک تکست فیلد که
از کلاس جاوا روبذارم تو صفحه:لبخند:
اگر کسی تونست کمک کنه
با تشکر

jdeveloper
شنبه 05 آبان 1386, 15:04 عصر
میتونید از کلاسهای Swing ارث ببرید یا حتی awt و چیزهایی به اون اضافه کنید.

pooyanm
یک شنبه 06 آبان 1386, 05:59 صبح
یک نمونه از java.awt.Component (http://java.sun.com/javase/6/docs/api/java/awt/Component.html) گسترش بده و با متد addKeyListener کلیدها را دریافت کن و به رشته داده ها اضافه کن و متد repaint را فراخوانی کن سپس متد paint را پیاده سازی کن و با متد drawString از شی Graphics رشته را نمایش بده

saeedIRHA
یک شنبه 06 آبان 1386, 08:09 صبح
یک نمونه از java.awt.Component (http://java.sun.com/javase/6/docs/api/java/awt/Component.html) گسترش بده و با متد addKeyListener کلیدها را دریافت کن و به رشته داده ها اضافه کن و متد repaint را فراخوانی کن سپس متد paint را پیاده سازی کن و با متد drawString از شی Graphics رشته را نمایش بده

خوب اینجا چندتا سوال برام پیش امد:
محل cursor رو چطوری نشون بده؟
اگر کاربر خواست یک کلمه رو پاک کنه چی؟
اگر بخواییم مثلاً چند تا حرف برگردیم عقب و یک حرف رو
تغییر بدیم چی کار کنیم؟

pooyanm
یک شنبه 06 آبان 1386, 12:12 عصر
خوب اینجا چندتا سوال برام پیش امد:
محل cursor رو چطوری نشون بده؟
اگر کاربر خواست یک کلمه رو پاک کنه چی؟
اگر بخواییم مثلاً چند تا حرف برگردیم عقب و یک حرف رو
تغییر بدیم چی کار کنیم؟
اگه درحد یه نمونه برنامه کوچک باشه کرسر تنها یک عدد هست که با کلیدهای چپ و راست از صفر تا طول رشته منهای یک کم یا زیاد و با یه drawLine ساده رسم می شه که مختصات اون با getFontMetrics().charWidth() و getFontMetrics().getHeight() تعیین می شه (نام دقیق این دو متد یادم نیست) جایی که باید حروف کم یا زیاد بشن هم با همین جایگاه کرسر مشخص می شه ولی اگه این برنامه از حد نمونه برنامه فراتر بره خود کرسر به تنهایی چند صد خط از کدهای کلاس Cursor، Document و JTextField را برای جزئیاتش نیاز داره. در نهایت اگر یه ویرایشگر مستقل مدنظر باشه نیاز به گسترش یا تغییر نام تقریبا 5-6 کلاس سوئینگ هست.