// How to create Buttons

 

// Source Code:Kurt Diedrich

// For private use only

 

// ####################################################################################

void setup()

{

 

// Zeichnen der Oberfläche und des Grafikfensters

 

size(1050,630); // Background

fill(50,60,70);

rect(0,0,1180,630);

fill(60,70,78);

rect(0,0,900,600); // Graphic display

 

// Zeichnen der Buttons

fill(100,120,140);

rect(950,20,80,22);  

rect(950,50,80,22);  

rect(950,80,80,22);  

rect(950,110,80,22);  

rect(950,140,80,22);  

rect(950,170,80,22); 

rect(950,200,80,22); 

 

// Buttontext schreiben

// Textbasis immer 14 Pixel tiefer als oberer Buttonrand

fill(255,255,255);

text("Text 1",954,34);

text("Text 2",954,64);

text("Objekt 1",954,94);

text("Objekt 2",954,124);

text("Objekt 3",954,154);

text("Delete",954,184);

text("End",954,214);

 

// Box für Textdarstellung zeichnen

fill(255,255,255);

rect(950,260,80,22);  

 

}

 

 

 

void draw()

{

  // Identify clicked buttons - Abfrage der angeklickten Koordinaten

  if(mousePressed)

  {

    // Wenn die linke Maustaste gedrückt wurde und der Pfeil sich auf einem Button befinde, dann

    // rufe die betreffenden Funktionen auf:

 

    if ((mouseX>950) & (mouseX<1030) & (mouseY>20) & (mouseY<42))   {function1(); }   // Call function1

    if ((mouseX>950) & (mouseX<1030) & (mouseY>50) & (mouseY<72))   {function2(); }   // Call function2

    if ((mouseX>950) & (mouseX<1030) & (mouseY>80) & (mouseY<102))  {function3(); }   // Call function3

    if ((mouseX>950) & (mouseX<1030) & (mouseY>110) & (mouseY<132)) {function4(); }   // Call function4

    if ((mouseX>950) & (mouseX<1030) & (mouseY>140) & (mouseY<162)) {function5(); }   // Call function5

    if ((mouseX>950) & (mouseX<1030) & (mouseY>170) & (mouseY<192)) {function6(); }   // Call function6     

    if ((mouseX>950) & (mouseX<1030) & (mouseY>200) & (mouseY<222)) {exit();}         

  }

}

 

// ################################################################################ Write a text  

void function1()

 

{

  // Write Text 1

  fill(255,255,255);

  rect(950,260,80,22);  

  fill(0,0,0);

  text("Funktion 1", 952,276);

  

}

 

// ############################################################################## Write a text 

 

void function2()

{     

  // Write Text 2

  fill(255,255,255);

  rect(950,260,80,22);  

  fill(0,0,0);

  text("new Text", 952,276);    

 

// ################################################################################ Rectangle

void function3()

 

  stroke(0,0,0);

  fill(255,0,0);

  rect(100,200,80,90);  

  

}

// ################################################################################ Circle

void function4()

 

  stroke (255,0,255);

  fill(255,255,0);

  ellipse(300,300,80,80);  

}

 // ################################################################################  Line

void function5()

 

 stroke(0,255,255);

 line( 100,300,400,400);

}   

 // ############################################################################# Clearscreen

void function6()

 

stroke(0,0,0);  

fill(60,70,78);

rect(0,0,900,600); // Graphic display

}