help

2 отговора 167 прегледа
#1

help

Имам едно въпросче.Тъй като от скоро се занимавам с JAVA,не мога да се справя тук с една задачка.Става въпрос да се направи програмка с бягащ бутон, но не ми е ясно как точно да си я подредя при дефинирането на бутона.И какво точно трябва да напиша, за да му оказвам каде да се намира.Като цяло съм решила в първоначално време бутона да е в средата, след като застате мишката върху него да отива в дясно, после в лява и така в един постоянен цикъл мисля да го сложа.И другото дали съм в права посока като смятам да използвам FocusListener.
Много ще съм благодарна ако ми дадете някакви напътствия.
Защото аз вече взех да блокирвам и всичко става някаква каша

Отговор
в отговор на maiadrumeva #2

Re: help

Най-напред трябва да се запознаеш по-добре с API-то на Java. Ето ти три линка, първия от които трябва да имаш в Bookmarks, ако ще се занимаваш с езика оттук нататък.

[линк]
[линк]
[линк]

Не ти трябва FocusListener. Ако погледнеш на страницата от първия линк, ще видиш, че за него там пише:

"The listener interface for receiving keyboard focus events on a component."

Ти вероятно се интересуваш от движения на мишката. Така че провери какво пише за MouseListener. Методът, който те интересува, е mouseEntered. Механизмът с Listener-ите трябва да проумееш сама - прочети какво пише в туториала, разгледай примерите.

[линк]

За да преместиш бутона, трябва да актуализираш позицията му в контейнера, който го съдържа. За тази цел контейнерът (панел примерно), не бива да има някой от специалните лейаути. Т.е. не бива да има никакъв лейаут, а ти сама да се грижиш за позиционирането му. Т.е. върху компонента, който съдържа бутона ти, трябва да извикаш метода setLayout(null). По този начин можеш да преместиш бутона където искаш с метода setBounds (виж и него в апито). След като си променила позицията на бутона, трябва да актуализираш контейнера. За тази цел виж какво пише в апито за класа Container. Методът беше paint(Graphics g) струва ми се. А за определяне на новата позиция на бутона, много по-тарикатско е да използваш класа Random в java.util. Прочети си и неговото апи. Изобщо когато нямаш добра идея как да напишеш някоя програма, схемата на действие, която препоръчвам е:

1. API - първо разгледай какво предлага Java. Ако не се справяш и не знаеш какво да търсиш -
2. Google - търси туториали, примери, книги и т.н. Ако влезеш във форум с въпроса как да си напишеш програмата шансът някой да ти отговори е минимален. Трябва добре да се осведомиш и да проучиш сама нещата и чак когато имаш някакъв конкретен проблем, нещо, което не се получава, ти не разбираш защо, а си пробвала вече какво ли не -
3. Попитай в някой форум.

Е, надявам се това да ти помага с нещо. Успех с борбата.

Отговор
в отговор на BubbleSort #3

Re: help

Mного ти благодаря доста изчерпателен отговор ми даваш на моя въпрос и наистина ми помогна.

Отговор