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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Java

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

Processing

Processingは、オープンソースプロジェクトによるCGのためのプログラミング言語です。Javaをベースにしており、グラフィック機能に特化しています。イメージの生成やアニメーションなど、視覚的なフィードバックを簡単に得ることが可能です。

Q&A

解決済

2回答

4510閲覧

Processingのクラスでオブジェクト生成ができない.

TYU_BMP

総合スコア26

Java

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

Processing

Processingは、オープンソースプロジェクトによるCGのためのプログラミング言語です。Javaをベースにしており、グラフィック機能に特化しています。イメージの生成やアニメーションなど、視覚的なフィードバックを簡単に得ることが可能です。

0グッド

0クリップ

投稿2018/11/07 08:43

実現したいこと

こんにちは.

Processingにて,controlP5というライブラリを用いてボタンやスライダーといったUIを簡単に扱うことができるのですが,クラス内において,それらを扱うControlP5オブジェクトの生成ができません.どうすればクラス内でcontrolP5を扱うことができますか?

ソースコード

Processing

1import controlP5.*; 2 3class Class{ 4 5 ControlP5 cp5;// 宣言はできる 6 Class(){ 7 cp5 = new ControlP5(this); // コンストラクター"ControlP5(Class)"は存在しません と怒られる 8 } 9}

試したこと

他ライブラリのオブジェクトの生成→同様のエラー

バージョン等

使用しているProcessing及びOSのバージョンは

  • Processing3.4
  • macOS Sierra 10.12.4

です.

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

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

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

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

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

guest

回答2

0

以下のような記述なら出来ます。

import controlP5.*; ControlP5 cp5; Class classInstance; void setup(){ cp5 = new ControlP5(this); classInstanc = new Class(); } class Class(){ Class(){ cp5.addSlider( "value-" ) . . . ; } } ``` クラス内にcp5 = new ControlP5を記述する方法もあるようですが 色々記述が増えるようです。 https://forum.processing.org/one/topic/having-a-controlp5-controller-inside-a-class.html

投稿2018/11/07 09:30

YOshim

総合スコア1085

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

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

TYU_BMP

2018/11/07 11:11

回答ありがとうございました. リンクに記載されている方法も試して見たいと思います.
guest

0

ベストアンサー

渡す引数の型に対応されてないからですね

Java

1// ControlP5にClassを渡すようなものは存在しないのでエラーになる 2ControlP5(this)

Java

1import controlP5.*; 2 3class Test { 4 ControlP5 cp5 = null; 5 Test(processing.core.PApplet a) { 6 this.cp5 = new ControlP5(a); 7 this.cp5.addSlider("sliderValue") 8 //.setLabel("bbb") 9 .setRange(0, 100)//0~100の間 10 .setValue(25)//初期値 11 .setPosition(50, 40)//位置 12 .setSize(200, 20)//大きさ 13 14 // まとめても書ける 15 // slider.addSlider(name, minimum, maximum, default value (float), x, y, width, height) 16 17 //.setColorActive(myColor)//hover 18 //.setColorBackground(myColor) //スライダの背景色 引数はintとかcolorとか 19 //.setColorCaptionLabel(myColor) //キャプションラベルの色 20 //.setColorForeground(myColor) //スライダの色 21 //.setColorValueLabel(myColor) //現在の数値の色 22 //.setSliderMode(Slider.FIX)//スライダーの形 Slider.FLEXIBLEだと逆三角形 23 .setNumberOfTickMarks(5);//Rangeを(引数の数-1)で割った値が1メモリの値 24 25 //スライダーの現在値の表示位置 26 this.cp5.getController("sliderValue") 27 .getValueLabel() 28 .align(ControlP5.RIGHT, ControlP5.BOTTOM_OUTSIDE)//位置、外側の右寄せ 29 .setPaddingX(-20);//padding値をとる alineで設定したRIGHTからのpadding 30 } 31} 32 33size(500, 500); 34Test a = new Test(this);

投稿2018/11/07 09:28

rururu3

総合スコア5545

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

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

TYU_BMP

2018/11/07 11:08

回答ありがとうございました. この方法で無事自分のしたいことが実現できました.今度からはよりリファレンスに目を 通すようにします.
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問