Cookies op Tweakers

Tweakers is onderdeel van DPG Media en maakt gebruik van cookies, JavaScript en vergelijkbare technologie om je onder andere een optimale gebruikerservaring te bieden. Ook kan Tweakers hierdoor het gedrag van bezoekers vastleggen en analyseren. Door gebruik te maken van deze website, of door op 'Cookies accepteren' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt? Bekijk dan ons cookiebeleid.

Meer informatie
Toon posts:

Tekst toevoegen aan jPane *

Pagina: 1
Acties:

Onderwerpen

Vraag


  • Micheal88
  • Registratie: oktober 2018
  • Laatst online: 11-01 21:42
Beste allemaal,


Voor het maken van een schoolopdracht heb ik een vraag:

Het is de bedoeling dat er meerdere buttons worden gebruikt die een tekst printen op een jPane of TextArea. Nou lukt het printen wel alleen wordt de tekst die geprint wordt elke keer overgeschreven. ik snap dat dit komt omdat ik gebruik maak van setText.

Per button selecteer ik dus een product die geprint wordt op het jPane/area en die per click ophoogt. nu wordt het product dus vervangen als de volgende button wordt gebruikt.

wie kan mij hierbij helpen? in mijn geval heb ik 6 buttons die onder elkaar worden weergeven in jPane/area. zij moeten verhogen dus moeten niet per click op de volgende regel plakken.

hierbij het stukje code wat ik gebruik:

Java:
1
2
3
4
5
 private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { 
        // TODO add your handling code here:
        if (jButton1.isSelected());
   geselecteerdeProducten[2] += producten[2];
   jTextArea1.append("\n" +"€" + geselecteerdeProducten [2]);


dit is een methode die ik geprobeerd heb en ook heb ik het op deze manier geprobeerd:

Java:
1
2
3
4
5
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { 
        // TODO add your handling code here:
        if (jButton1.isSelected());
   geselecteerdeProducten[2] += producten[2];
   jTextArea1.setText("€" + geselecteerdeProducten [2]);


bij voorbaat dank.

[Voor 1% gewijzigd door RobIII op 19-10-2018 11:27]

Alle reacties


  • RobIII
  • Registratie: december 2001
  • Nu online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

Wil je voortaan code tags gebruiken bij 't plaatsen van code a.u.b? En graag verneem ik ook een voorstel voor een nieuwe / betere topictitel dan "schoolopdracht".

Verder is het probleem me niet helemaal duidelijk. Kun je het nog eens uitleggen / anders verwoorden of misschien voorzien van een afbeelding om je probleem te illustreren?

[Voor 28% gewijzigd door RobIII op 19-10-2018 11:32]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Roses are red Violets are blue, Unexpected ‘{‘ on line 32.

Over mij


  • Harrie_
  • Registratie: juli 2003
  • Niet online

Harrie_

🔴 🔴 🔴 🔴 🔴

Ik heb bepaald geen verstand van Java maar ik ga toch een poging wagen om te helpen :+
Biedt Google geen soelaas? Ik kom bijvoorbeeld vrij snel op deze StackOverflow vraag met als titel: How to append data in JTextArea in Java?

Verder - en dat is een tip - is het volgens mij in geen enkele taal handig om namen zoals 'Button1' en 'TextArea1' te gebruiken. Dat is allemaal nog te overzien zolang je met 3,4,5 elementen te maken hebt. Maar zodra je 10 buttons, 20 inputvelden en 15 dropdowns hebt wordt het een grote spagetti. Gewoon renamen dus naar 'ButtonProductToevoegen' bijvoorbeeld....

Edit in aanvulling op @RobIII is het inderdaad niet geheel duidelijk inderdaad. Ik ging ervanuit dat je data wil appenden maar je geeft aan te willen 'verhogen'. Verder zie ik ook in je code een €-teken staan. Klopt het dat je in je TextArea een bedrag hebt staan (bijv. € 10,-) en dat je na een klik op een button dit bedrag wil verhogen (naar bijv. € 20,-)?

[Voor 21% gewijzigd door Harrie_ op 19-10-2018 11:39]

☀️🔋  18 Panelen | 5,8 kWp | SolarEdge SE6K


  • Viper®
  • Registratie: februari 2001
  • Niet online
bij nader inzien, toch niet helemaal duidelijk voor mij wat er nu moet worden weergegeven.
Friday struggles

[Voor 77% gewijzigd door Viper® op 19-10-2018 11:40]

https://ftx.com/#a=Viper | Crypto trading | Growatt 6000TL3-S 6615WP(21x315) ZZW(212graden)35helling


  • Micheal88
  • Registratie: oktober 2018
  • Laatst online: 11-01 21:42
beste Harrie,

bedankt voor je hulp. ik heb de naam van de button even als voorbeeld gebruikt. normaal gesproken geef ik ze een andere naam.

Thanks!

  • RobIII
  • Registratie: december 2001
  • Nu online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

Viper® schreef op vrijdag 19 oktober 2018 @ 11:38:
Kan je niet gewoon eerst de tekst uit het textveld uitlezen en die dan aanvullen met de tekst die erbij moet ?
Ja joh, maak 't nog moeilijker dan nodig.
Veel beter hou je gewoon ergens een array/list/whatever bij met de selectie(s) en telkens als er iets wordt toegevoegd/verwijderd werk je die array/list bij en genereer je gewoon héél de tekst opnieuw.

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Roses are red Violets are blue, Unexpected ‘{‘ on line 32.

Over mij


  • Viper®
  • Registratie: februari 2001
  • Niet online
Harrie_ schreef op vrijdag 19 oktober 2018 @ 11:36:
Ik heb bepaald geen verstand van Java maar ik ga toch een poging wagen om te helpen :+
Biedt Google geen soelaas? Ik kom bijvoorbeeld vrij snel op deze StackOverflow vraag met als titel: How to append data in JTextArea in Java?

Verder - en dat is een tip - is het volgens mij in geen enkele taal handig om namen zoals 'Button1' en 'TextArea1' te gebruiken. Dat is allemaal nog te overzien zolang je met 3,4,5 elementen te maken hebt. Maar zodra je 10 buttons, 20 inputvelden en 15 dropdowns hebt wordt het een grote spagetti. Gewoon renamen dus naar 'ButtonProductToevoegen' bijvoorbeeld....

Edit in aanvulling op @RobIII is het inderdaad niet geheel duidelijk inderdaad. Ik ging ervanuit dat je data wil appenden maar je geeft aan te willen 'verhogen'. Verder zie ik ook in je code een €-teken staan. Klopt het dat je in je TextArea een bedrag hebt staan (bijv. € 10,-) en dat je na een klik op een button dit bedrag wil verhogen (naar bijv. € 20,-)?
In dat geval kan je beter het totaalbedrag in een apart private decimal veld stoppen. Hierbij dan met =+ het bedrag voor het product bij optellen en het textveld updaten met dit veld.
RobIII schreef op vrijdag 19 oktober 2018 @ 11:40:
[...]

Ja joh, maak 't nog moeilijker dan nodig.
Veel beter hou je gewoon ergens een array/list/whatever bij met de selectie(s) en telkens als er iets wordt toegevoegd/verwijderd werk je die array/list bij en genereer je gewoon héél de tekst opnieuw.
wat hij zegt dus

[Voor 12% gewijzigd door Viper® op 19-10-2018 11:41]

https://ftx.com/#a=Viper | Crypto trading | Growatt 6000TL3-S 6615WP(21x315) ZZW(212graden)35helling


  • Micheal88
  • Registratie: oktober 2018
  • Laatst online: 11-01 21:42
Harrie_ schreef op vrijdag 19 oktober 2018 @ 11:36:
Ik heb bepaald geen verstand van Java maar ik ga toch een poging wagen om te helpen :+
Biedt Google geen soelaas? Ik kom bijvoorbeeld vrij snel op deze StackOverflow vraag met als titel: How to append data in JTextArea in Java?

Verder - en dat is een tip - is het volgens mij in geen enkele taal handig om namen zoals 'Button1' en 'TextArea1' te gebruiken. Dat is allemaal nog te overzien zolang je met 3,4,5 elementen te maken hebt. Maar zodra je 10 buttons, 20 inputvelden en 15 dropdowns hebt wordt het een grote spagetti. Gewoon renamen dus naar 'ButtonProductToevoegen' bijvoorbeeld....

Edit in aanvulling op @RobIII is het inderdaad niet geheel duidelijk inderdaad. Ik ging ervanuit dat je data wil appenden maar je geeft aan te willen 'verhogen'. Verder zie ik ook in je code een €-teken staan. Klopt het dat je in je TextArea een bedrag hebt staan (bijv. € 10,-) en dat je na een klik op een button dit bedrag wil verhogen (naar bijv. € 20,-)?
Ja dat klopt. de producten zijn ingeladen in een array. bij elke klik op de knop moet de prijs ophogen.

  • Harrie_
  • Registratie: juli 2003
  • Niet online

Harrie_

🔴 🔴 🔴 🔴 🔴

Micheal88 schreef op vrijdag 19 oktober 2018 @ 11:45:
[...]
Ja dat klopt. de producten zijn ingeladen in een array. bij elke klik op de knop moet de prijs ophogen.
Dan zou ik nog eens naar de post hierboven van @Viper® kijken O-)

☀️🔋  18 Panelen | 5,8 kWp | SolarEdge SE6K


  • RobIII
  • Registratie: december 2001
  • Nu online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

Harrie_ schreef op vrijdag 19 oktober 2018 @ 11:46:
[...]


Dan zou ik nog eens naar de post hierboven van @Viper® kijken O-)
Dat zou ik niet doen ;)
Allereerst gaan =+ niet werken (het is += ;) ). Daarbij wil je geen totaal bijhouden maar een lijst van de geselecteerde producten (en evt. aantallen) om daarmee de jTextArea (of whatever) te kunnen vullen bij elke mutatie (ik zie even een 'kassabonnetje' voor me; dat gaat je niet lukken als je alleen maar een totaal bijhoudt). Bij elke mutatie genereer je gewoon heel de tekst ('de bon') opnieuw a.d.h.v. de gegevens in je array/list en vul (lees: overschrijf) je de gehele inhoud van textarea.
Micheal88 schreef op vrijdag 19 oktober 2018 @ 11:45:
[...]


Ja dat klopt. de producten zijn ingeladen in een array. bij elke klik op de knop moet de prijs ophogen.
Zoals ik ook al in de DM zei; het zou je sieren als je reageert op de vragen die je gesteld worden en de feedback die je gegeven wordt. De 'oneliners' die je nu post komen nu niet bepaald over alsof je zelf nog enige moeite doet.

[Voor 46% gewijzigd door RobIII op 19-10-2018 11:52]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Roses are red Violets are blue, Unexpected ‘{‘ on line 32.

Over mij


  • Harrie_
  • Registratie: juli 2003
  • Niet online

Harrie_

🔴 🔴 🔴 🔴 🔴

RobIII schreef op vrijdag 19 oktober 2018 @ 11:48:
[...]
Dat zou ik niet doen ;)
Allereerst gaan =+ niet werken (het is += ;) ). Daarbij wil je geen totaal bijhouden maar een lijst van de geselecteerde producten (en evt. aantallen) om daarmee de jTextArea (of whatever) te kunnen vullen bij elke mutatie (ik zie even een 'kassabonnetje' voor me; dat gaat je niet lukken als je alleen maar een totaal bijhoudt). Bij elke mutatie genereer je gewoon heel de tekst ('de bon') opnieuw a.d.h.v. de gegevens in je array/list en vul (lees: overschrijf) je de gehele inhoud van textarea.
[...]
Je hebt helemaal gelijk :Y
Ik was zelf ook niet aan het nadenken 8)7

☀️🔋  18 Panelen | 5,8 kWp | SolarEdge SE6K


  • DroogKloot
  • Registratie: februari 2001
  • Niet online

DroogKloot

depenisvanjezus

Java:
1
if (jButton1.isSelected());
Psst... maak van die ';' eens een mooie '{', en plaats dan een '}' na regel 4 (of 5).
Pagina: 1


Apple iPad Pro (2021) 11" Wi-Fi, 8GB ram Microsoft Xbox Series X LG CX Google Pixel 5a 5G Sony XH90 / XH92 Samsung Galaxy S21 5G Sony PlayStation 5 Nintendo Switch Lite

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2021 Hosting door True