Avatar billede bjur Nybegynder
14. marts 2005 - 11:34 Der er 12 kommentarer

Ændre beskyttet kode i Netbeans.

Hej, vi vil gerne lave vores GUI klasse synchronized. Problemet ligger i, at det er genereret kode, som er beskyttet, så vi kan ikke gøre klassen synchronized. Findes der nogle muligheder for at ændre dette?
Avatar billede arne_v Ekspert
14. marts 2005 - 12:03 #1
Avatar billede arne_v Ekspert
14. marts 2005 - 12:03 #2
Jeg tror at mange droppe GUI builderen og selv skriver koden, når
de har fået lidt erfaring med Swing
Avatar billede bjur Nybegynder
14. marts 2005 - 12:12 #3
Jep, men nu er vi nået så langt, så det er for sent at ændre. Men vi ønsker sådan set at editere de blå feltet, så vi kan gøre klassen synchronized.
Avatar billede _carsten Nybegynder
14. marts 2005 - 12:50 #4
I kan ikke ændre den blå kode direkte, men indirekte via wizarden - at gøre klassen synchronized, kan jeg se skulle være noget problem.

Post eventuelt den del af koden det drejer sig om, så skal jeg se om jeg kan gætte hvor vi er henne og hjælpe jer videre.
Avatar billede arne_v Ekspert
14. marts 2005 - 12:56 #5
som der står i FAQ giver NetBeans ikke adgang til at rette direkte i koden
Avatar billede _carsten Nybegynder
14. marts 2005 - 12:59 #6
Korrekt - ikke direkte, men indirekte
Avatar billede bjur Nybegynder
14. marts 2005 - 13:00 #7
Hvilken wizard drejer det sig om?
Fandt ud af, at GUI'en skulle extende Thread, men problemet ligger i, at den allerede extender JFrame.
Koden er:

/*
*|------------------------------------
*| Der importeres følgende packages:
*|------------------------------------
*/
import java.rmi.*;
import java.rmi.registry.*;
import java.util.ArrayList;
import java.awt.*;
/*
*|------------------------------------
*| Klasse Signatur:
*|------------------------------------
*/
public class gui_Spilleplade extends javax.swing.JFrame
{
    /*
  *|------------------------------------
  *| Instans Variabler:
  *|------------------------------------
  */
    private String serveradresse;
    private String spillernavn;
    /*
    *|------------------------------------
    *| Konstruktør:
    *|------------------------------------
    */
    public gui_Spilleplade()
    {
     
        initComponents();
        //kontrol = new con_Kontrol();
    }
   
  /*
*|------------------------------------
*| Initialisering af Instansvariable:
*|------------------------------------
*/
Avatar billede _carsten Nybegynder
14. marts 2005 - 13:06 #8
Den del er da ikke låst, det kan du da bare rette i "source" fanen
Avatar billede bjur Nybegynder
14. marts 2005 - 13:28 #9
Tak for svaret. Hvordan kan den extende både JFrame og Thread.
Hvordan vil koden se ud.
Avatar billede _carsten Nybegynder
14. marts 2005 - 13:29 #10
I java kan en klasse kun extende én klasse, men du kan implementere flere interfaces
Avatar billede _carsten Nybegynder
14. marts 2005 - 13:41 #11
Måske skulle jeg sige, at i jeres tilfælde ville jeg nok extende JFrame og implementere interfacet Runnable

public class gui_Spilleplade extends javax.swing.JFrame implements Runnable
{

  // implementation run
  public void run(){
      // her laver i så trådens arbejde
  }
Avatar billede arne_v Ekspert
14. marts 2005 - 13:56 #12
Man er nødt til at bruge Runnable når man allerede extender en klasse
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester