목록개발 공부/Juce Gui (4)
음악, 삶, 개발
Grid Class Reference 설명 setBound 로 각 컴포넌트를 배치하는것은 매우 괴로운일일것이다. CSS 의 Grid 와 매우 비슷하게 동작하는 Grid 클래스를 사용하면 각 컴포넌트를 비율로 배치할수있다. 한가지 기억해야할 중요한것은 setBound 든 Grid 든 컴포넌트의 크기에 대한 모든것은, resized() 안에서 정의되어야한다. resized() 코드 void resized() override { juce::Grid grid; using Track = juce::Grid::TrackInfo; using Fr = juce::Grid::Fr; grid.templateRows = { Track (Fr (1)) }; grid.templateColumns = { Tra..
설명 Panel 컴포넌트를 만들어, Canvas 컴포넌트안에 넣으려한다. 아래와 같이 코드를 작성한다. 1. Canvas 클래스의 멤버로 Panel 컴포넌트를 집어넣는다. 2. Canvas 클래스의 Constructor 에서 addAndMakeVisible 함수를 사용하여 각 멤버를 인자로 넘긴다. 3. Canvas 클래스의 resized() 함수에서 setBounds 를 사용하여 위치 시켜준다. 2번 Step 이 누락되었을때, 아무것도 표시되지않음을 알아야한다. 코드 class Panel : public juce::Component { public : Panel(const juce::Colour& newColor) : color(newColor) {} void paint(juce::Graphics& g..
일러스트레이터에서는 하나의 요소를 Layer 라고하지만, Juce 에서는 Component 라고 한다. 하나의 Component 에는 멤버 변수로 여러 Component 들이 포함될수있다. 아래와 같이 만든다. class Panel : public juce::Component { public : Panel(const juce::Colour& newColor) : color(newColor) {} void paint(juce::Graphics& g) override { g.fillAll(color); } private : const juce::Colour color; };