質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Swing

SwingはJavaに標準で付属するグラフィック関連のクラスライブラリを指します。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

Q&A

解決済

1回答

2742閲覧

launcherの作り方

Launcher

総合スコア19

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Swing

SwingはJavaに標準で付属するグラフィック関連のクラスライブラリを指します。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

0グッド

0クリップ

投稿2017/01/18 07:09

###前提・実現したいこと
javaとSwingを使ってLauncherを作っています。
開発環境はeclipse。OSはwindows 10です。

イメージとしては、
Magic Formationというlauncher(アイコンの配置が丸を描いているもの)を基盤とし、マウスのホイールを転がすとその円になっているアイコンが回り、一番手前に来ているもののみ選択できるというものです。
形は楕円にし、立体感を出したいと思っています。

※イメージはMagic Formationではありません。
イメージ説明
###発生している問題・エラーメッセージ
円の真ん中にもう一つボタンを用意し、それをドラッグすることでこのlauncherをデスクトップのどこにでも移動させたいのですがやり方がわかりません。
アイコンを回転させることができません。

エラーメッセージ

###該当のソースコード
import java.awt.;
import java.awt.event.
;
import javax.swing.*;
public class Swingidou {
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
@Override public void run() {
createAndShowGUI();
}
});
}
public static void createAndShowGUI() {
DragWindowListener dwl = new DragWindowListener();
JFrame frame = new JFrame();
frame.setUndecorated(true);
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.addMouseListener(dwl);
frame.addMouseMotionListener(dwl);
frame.setSize(320, 240);
frame.setLocationRelativeTo(null);
frame.setVisible(true);

}
}
class DragWindowListener extends MouseAdapter {
private final Point startPt = new Point();
private Window window;
@Override public void mousePressed(MouseEvent me) {
if (window == null) {
Object o = me.getSource();
if (o instanceof Window) {
window = (Window) o;
} else if (o instanceof JComponent) {
window = SwingUtilities.windowForComponent(me.getComponent());
}
}
startPt.setLocation(me.getPoint());
}
@Override public void mouseDragged(MouseEvent me) {
if (window != null) {
Point eventLocationOnScreen = me.getLocationOnScreen();
window.setLocation(eventLocationOnScreen.x - startPt.x,
eventLocationOnScreen.y - startPt.y);
}
}
}

移動についてです。これは完全にネットに転がっていたものです。
これを利用して、launcherの移動ができませんか・・・?
###試したこと

###補足情報(言語/FW/ツール等のバージョンなど)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

提示されているサンプルはズバリウィンドウを移動させるだけの機能を実装したサンプルですね。

これを利用して、launcherの移動ができませんか・・・?

できると思いますが、質問を変えた方が良いでしょう。あなたがこのサンプルを自分のアプリケーションにどう応用するかはこのサンプルを理解するところから始めるべきです。質問にはあなたがこのサンプルから何を読み取りどこがわからないかを書くべきだと思います。それがはっきりしたら質問にそれを追加してみてください。おそらくは疑問に対する回答が得られると思います。

今のままでは「あなたがJavaあるいはswingについて何がわかって何がわからないのか」見えないので何を答えたらアドバイスになるか分かりません。

投稿2017/01/18 07:39

KSwordOfHaste

総合スコア18392

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問