Aplicações versus Applets

Tamanho: px
Começar a partir da página:

Download "Aplicações versus Applets"

Transcrição

1 Aplicações versus Applets Há duas maneiras diferentes de correr um programa Java: Como Aplicação: programa independente e autónomo ( stand-alone ) que pode ser invocado da linha de comandos. Como Applet: programa embebido numa página Web, que corre quando a página é visualizada por um browser. Aplicações e Applets diferem nos privilégios de execução e no modo como indicam onde começar a execução. Browsers de páginas Web assim como o appletviewer tratam código HTML (HyperText Markup Language). Assim como há tags html para colocar texto em bold, ou incluir imagens, também há tags html para correr um applet Java existente num ficheiro.class. Um exemplo de código HTML (colocado, por exemplo, no ficheiro exapplet.html ) que invoca um applet existente no ficheiro exapplet.class mostra-se a seguir: <title> Exemplo de um Applet </title> <applet code= exapplet.class width=300 height=50> </applet> Os campos width e height (largura e altura) são obrigatórios, e são medidos em pixeis (pontos de resolução no ecrã do computador). Os applets correm num objecto janela, e é necessário indicar ao browser o tamanho da janela no qual o applet deve começar. Os applets e as aplicações são invocados de maneira diferente. As aplicações começam a execução num método público designado main() com uma assinatura específica, de um modo semelhante à linguagem C. Quando a aplicação corre, main() é executado e a partir de main() é implementado o comportamento que se pretende que o programa tenha. A convenção para os applets é diferente e envolve a reescrita (override) de certos métodos que são automaticamente chamados pelo browser. Estes métodos existem definidos na classe Applet, sem qualquer funcionalidade. O programa de um applet deve criar métodos que anulem os correspondentes métodos definidos na classe Applet (tendo a mesma assinatura), para executar as tarefas específicas pretendidas. Quando um applet é carregado, Java cria uma instância da classe carregada (que é um objecto Applet) e uma série de métodos especiais Applet são chamados nessa instância. Os cinco métodos mais importantes na execução de um applet são: public void init() public void start() public void stop() public void destroy() public void paint(graphics g) 126

2 1. O browser ou o appletviewer carrega o applet no sistema e começa por chamar o método init() método nunca chamado pelo programa. Este método é chamado quando o applet é carregado pela primeira vez ou recarregado ( load ou reload ). O método init() é normalmente usado para criar os objectos gráficos de interface com o utilizador (GUI Graphical User Interface) e threads. 2. Em seguida é automaticamente chamado o método start() método nunca chamado pelo programa. Só se usa se se necessitar de iniciar qualquer coisa tal como threads. 3. Depois é automaticamente chamado o método paint() método que em geral nunca é directamente chamado pelo programa. Normalmente o programa chama outro método, repaint(), que por sua vez chama o método paint(). O método paint() recebe como parâmetro um objecto da classe Graphics, criado e passado ao método paint() pelo browser. Este objecto gráfico contém o estado gráfico do applet, isto é, as características correntes da superfície de desenho. Desenhando neste objecto, desenha-se no applet e os resultados aparecem no ecrã. Porque um applet é uma janela Java não usa o input/output standard. Usa as facilidades disponíveis para janelas, tais como desenhar uma string em determinadas coordenadas. O método paint() é o lugar onde o trabalho do applet realmente ocorre. Painting pode ocorrer muitas vezes durante o ciclo de vida de um applet, depois de um applet ser inicializado, se o browser é colocado detrás de outra janela no ecrã e depois trazido outra vez para a frente, se a janela do browser é movida para uma posição diferente do ecrã, ou se chamado pelo programa do applet para, por exemplo, realizar animação. Como paint() recebe como argumento uma instância da classe Graphics, se se usa este método é necessário importar a classe Graphics para o código do applet, através da seguinte instrução: import java.awt.graphics; 4. Se o browser deixa a página, isso causa uma chamada automática ao método stop() método nunca chamado pelo programa. Neste método pode-se parar threads que tenham sido lançadas pelo applet. Se o browser regressa à página que contém o applet, isto causa uma chamada automática ao método start() e o fluxo de actividade continua a partir do ponto 2 acima. 5. Se o browser descarrega a página causa uma chamada ao método destroy() método nunca chamado pelo programa. Este método informa o applet que deve terminar tudo. 127

3 Gráficos Gráficos, Fontes e Cores Para desenhar no ecrã em Java é necessário um contexto gráfico. Um contexto gráfico é mantido num objecto da classe Graphics e controla o modo como a informação é desenhada. Objectos da classe Graphics contêm métodos para desenhar, manipular fontes e cores. É necessário usar um objecto da classe Graphics para se desenhar. Um objecto da classe Graphics é passado pelo sistema ao método paint() como argumento, quando uma operação paint ocorre. O método paint() normalmente não é directamente chamado pelo programador. Quando um applet é inicialmente executado, o método paint() é automaticamente chamado ( depois da chamada dos métodos init() e start() ). Para que paint() volte novamente a ser chamado é necessário que ocorra um evento tal como um redimensionamento ( resizing ) do applet. Se o programador necessita de chamar um método que efectue o painting, deve chamar o método repaint() ( public void repaint() ) que efectua um clear seguido de um paint. O browser cria um objecto gráfico (um objecto da classe Graphics ) que contém o estado gráfico do applet as características correntes da superfície de desenho, tais como cores de foreground e background e passa este objecto ao método paint() sempre que invoca a sua execução. O método paint() tem o seguinte formato: public void paint( Graphics g) {... Por este motivo é necessário importar a classe Graphics para o código do applet: import java.awt.graphics; Para desenhar objectos no ecrã, chamam-se métodos de desenho disponíveis na classe Graphics. Todos os métodos de desenho têm argumentos representando pontos no sistema de coordenadas do applet. O sistema de coordenadas do applet Java tem a origem (0, 0) no canto superior esquerdo. Valores positivos da coordenada x correspondem a pontos situados à direita da origem e valores positivos da coordenada y correspondem a pontos situados abaixo da origem. (0, 0) x y 128

4 Desenho e Preenchimento ( Filling ) A classe Graphics possui um conjunto de primitivas gráficas para desenhar, incluindo: 1. Linhas, 2. Rectângulos, 3. Rectângulos arredondados, 4. Polígonos, 5. Ovais, 6. Arcos. 1. Desenho de Linhas Método drawline - classe Graphics public void drawline( int x1, int y1, int x2, int y2) => desenha uma linha entre os pontos [x1, y1] e [x2, y2]. 2. Desenho de Rectângulos Método drawrect - classe Graphics Método fillrect - classe Graphics Método clearrect - classe Graphics public void drawrect( int x, int y, int width, int heigh) public void fillrect( int x, int y, int width, int heigh) public void clearrect( int x, int y, int width, int heigh) => Estes métodos desenham um rectângulo com o canto superior esquerdo nas coordenadas [x, y] e de largura width e altura heigh. drawrect() - desenha o rectângulo com uma linha na cor corrente. fillrect() - desenha o rectângulo sólido na cor corrente. clearrect() - desenha o rectângulo sólido na cor corrente do background. 3. Desenho de Rectângulos Arredondados rectângulos com cantos arredondados Métodos drawroundrect e fillroundrect - classe Graphics public void drawroundrect(int x, int y, int width, int heigh, int arcwidth, int archeigh) public void fillroundrect( int x, int y, int width, int heigh, int arcwidth, int archeigh) => Estes métodos desenham um rectângulo com cantos arredondados, situado dentro de um rectângulo com o canto superior esquerdo nas coordenadas [x, y] e de largura width e altura heigh. As ovais que formam os cantos do rectângulo têm largura arcwidth e altura archeigh. 129

5 drawroundrect() fillroundrect() - desenha o rectângulo arredondado. - desenha o rectângulo arredondado sólido. O canto superior esquerdo especificado na chamada destes métodos está a alguma distância acima e à esquerda da linha oval do canto. 4. Desenho de Polígonos Método drawpolygon - classe Graphics Método fillpolygon - classe Graphics Pode-se escolher o modo como indicar a lista de coordenadas dos pontos vértices do polígono: ou como arrays de coordenadas x e coordenadas y ou como uma instância da classe Polygon. Usando o primeiro modo, os métodos drawpolygon() e fillpolygon() recebem 3 argumentos. Java automaticamente fecha o polígono. Para deixar a linha incompleta, tem de se usar o método drawpolyline(). public void drawpolygon( int xpoints[], int ypoints[], int points) public void fillpolygon( int xpoints[], int ypoints[], int points) => Estes métodos desenham um polígono na cor corrente com o número de pontos points, em que a coordenada x de cada ponto está especificada no array xpoints e a coordenada y no correspondente elemento do array ypoints. Usando o 2º modo é necessário primeiro criar um objecto Polygon. public void drawpolygon( Polygon p) public void fillpolygon( Polygon p) public Polygon( int xvalues[], int yvalues[], int numberofpoints) => Este construtor constrói um novo objecto polígono com o número de lados numberofpoints em que cada ponto tem uma coordenada x do array xvalues e coordenada y do array yvalues. Para desenhar uma linha poligonal aberta usa-se o método drawpolyline() que funciona como o 1º modo de desenhar polígonos. 5. Desenho de Ovais: elipses ou círculos Método drawoval - classe Graphics Método filloval - classe Graphics public void drawoval( int x, int y, int width, int height ) public void filloval( int x, int y, int width, int height) 130

6 => Estes métodos desenham uma oval (elípse ou círculo) na cor corrente situada dentro de um rectângulo com o canto superior esquerdo no ponto [x, y] e de largura width e altura height. drawoval() filloval() - desenha uma linha oval na cor corrente. - desenha uma oval sólida na cor corrente. O canto superior esquerdo especificado na chamada destes métodos está a alguma distância acima e à esquerda da linha oval. É mais simples pensar na posição do rectângulo no qual a oval fica inscrita. 6. Desenho de Arcos Método drawarc e fillarc - classe Graphics Um arco é parte de uma oval. O modo mais simples de pensar num arco é como uma secção de uma oval completa. Um arco é desenhado entre 2 ângulos: o ângulo de partida e o ângulo do arco. Os ângulos dos arcos são medidos em graus. Zero graus corresponde à posição de um ponteiro nas 3 horas, graus positivos correspondem ao sentido contrário ao do movimento dos ponteiros do relógio, e graus negativos correspondem ao sentido do movimento dos ponteiros do relógio. public void drawarc( int x, int y, int width, int height, int startangle, int arcangle) public void fillarc( int x, int y, int width, int height, int startangle, int arcangle) => Estes métodos desenham um arco na cor corrente que é parte de uma oval situada dentro de um rectângulo com o canto superior esquerdo no ponto [x, y] e de largura width e altura height. O arco começa no ângulo startangle e estende-se arcangle ângulos. drawarc() fillarc() - desenha a linha de um arco, parte de uma oval, na cor corrente. - desenha um arco preenchido, parte de uma oval sólida, na cor corrente. Arcos sólidos (preenchidos) são desenhados como se fossem secções de ovais: ambos os pontos extremos se juntam ao centro da oval. O canto superior esquerdo, largura e altura especificados na chamada destes métodos não são o ponto de partida, largura e altura dos arcos desenhados no ecrã. Eles determinam a forma da oval da qual o arco é uma parte. Os últimos 2 argumentos determinam os pontos inicial e final do arco. O penúltimo argumento é o ângulo do ponto inicial e o último argumento indica a amplitude do varrimento e o sentido do arco ao longo da oval, e não indica o ângulo do ponto final. 131

7 Fontes e Texto Pode-se imprimir texto no ecrã usando a classe Graphics em conjunção com a classe Font. Para desenhar texto no ecrã, primeiro é necessário criar uma instância da classe Font. Os objectos da classe Font representam uma fonte individual, isto é, o nome, estilo (plain, bold, italic) e tamanho em points. Os nomes das fontes são strings representativas da família da fonte, como por exemplo TimesRoman, Courier, ou Helvetica. Os estilos das fontes são constantes do tipo inteiro definidas na classe Font com as designações Font.PLAIN, Font.BOLD, e Font.ITALIC. Para criar uma fonte usa-se o construtor de 3 argumentos, como no exemplo: Font f = new Font ( TimesRoman, Font.BOLD, 14); É necessário importar a classe Font antes de usar este construtor: import java.awt.font Como os estilos de fontes são constantes inteiras podem ser adicionados para criar estilos combinados. Por exemplo Font.BOLD + Font.ITALIC produz uma fonte que é ao mesmo tempo bold e italic. A fonte corrente é parte do estado (contexto) gráfico que é mantido pelo objecto gráfico no qual se está a desenhar. Sempre que se desenha texto no ecrã, Java desenha esse texto na fonte corrente. Para mudar a fonte de texto, é necessário primeiro criar um objecto Fonte e em seguida colocá-la como fonte corrente, usando o método setfont() aplicável a objectos da classe Graphics. Ex.: import java.awt.font; import java.awt.graphics; public class ExemploFont extends java.applet.applet { public void paint(graphics g) { Font f = new Font("TimesRoman", Font.PLAIN, 72); g.setfont(f); g.drawstring("this is a big font", 10, 100); Cores Uma cor é representada como uma combinação de vermelho, verde e azul (Red, Green and Blue RGB). Cada componente da cor pode ter um valor entre 0 e 255. Preto é (0,0,0) e branco é (255, 255, 255). Na classe Color existem definidos um conjunto de objectos representando cores standards, para facilitar o uso das cores mais vulgares, tais como: 132

8 Nome da cor: R(ed) G(reen) B(lue) Color.white Color.black Color.gray Color.red Color.green Color.blue Color.yellow Color.pink Color.orange Para desenhar um objecto numa cor particular, deve-se criar uma instância da classe Color para representar essa cor. Se a cor que se pretende usar não é um objecto Color standard, pode-se criar um objecto Color com qualquer combinação de valores para red, green e blue, através do construtor Color(red, green, blue), como no exemplo: Color c = new Color(140, 140, 140) Para desenhar um objecto ou texto numa determinada cor é necessário primeiro criar um objecto cor correspondente à cor pretendida, e em seguida colocá-lo como a cor corrente, usando o método setcolor() aplicável a objectos da classe Graphics. Para além de ser possível colocar uma cor corrente para o contexto gráfico, também é possível colocar as cores de background e foreground do próprio applet usando os métodos setbackground() e setforeground() definidos na classe java.awt.component, que são herdados pela classe Applet e pelas classes por nós criadas. Exemplo: import java.awt.graphics; import java.awt.color; public class ExemploCor extends java.applet.applet { public void init() { setbackground(color.white); public void paint(graphics g) { g.setcolor(color.red); g.drawstring("window text is this color", 20, 50); g.setcolor(color.green); g.fillrect(5, 60, 180, 20); 133

9 Eventos As aplicações gráficas são guiadas por eventos; não fazem nada até que o utilizador mova o rato, clique um botão ou prima uma tecla. Um programa guiado por eventos é estruturado à volta do modelo de processamento de eventos. Há 2 modelos de processamento de eventos correspondentes a 2 versões da linguagem Java: 1.0 e 1.1. Os eventos são gerados e fluem no sistema de um modo semelhante em qualquer um dos modelos. Os dois modelos diferem no modo como o programa que construímos recebe e processa os eventos. Tratamento dos Eventos O sistema operativo reporta aos programas que estão a correr, os eventos que ocorrem. Cada programa decide o que fazer com esses eventos. Visual Basic esconde a fila de eventos ( event queue ) do programador. Cada componente gráfico de interface com o utilizador responde a um conjunto fixo de eventos (sendo impossível mudar os eventos a que responde um componente Visual Basic). Cada componente tem um procedimento associado a cada evento a que responde e Vbasic activa o código desse procedimento em resposta à ocorrência do evento. No C standard, em contraste com a simplicidade do Visual Basic, um programa guiado por eventos necessita de filtrar constantemente a fila de eventos reportada pelo sistema operativo. Deste modo é muito mais difícil de programar mas tem a vantagem de não limitar os eventos a que se pode responder como no Vbasic. Java usa uma aproximação intermédia entre o C standard e Visual Basic resultando uma técnica poderosa com uma complexidade intermédia. É possível responder a todos os eventos conhecidos pelo AWT e especificar a que eventos um dado componente responde. Modelo de Eventos 1.0 Em Java 1.02 todos os eventos são representados pela classe Event. Esta classe tem variáveis instância que descrevem o evento. Uma destas variáveis, id, especifica o tipo de evento. Na classe Event define-se um número de constantes que são os possíveis valores do campo id. O campo target especifica o objecto que gera o evento, ou no qual o evento ocorreu. Em Java 1.02 a ocorrência de um evento causa a chamada do método handleevent() (classe Component): public boolean handleevent(event evt) 134

10 A implementação, por omissão, deste método verifica o campo id do objecto Event, e para os tipos de eventos mais vulgarmente usados chama um dos métodos específicos (definidos na classe Component): id = ACTION_EVENT public boolean action(event evt, Object arg) id = GOT_FOCUS public boolean gotfocus(event evt, Object what) id = LOST_FOCUS public boolean lostfocus(event evt, Object what) id = KEY_PRESS public boolean keydown(event evt, int key) id = KEY_RELEASE public boolean keyup(event evt, int key) id = MOUSE_DOWN public boolean mousedown(event evt, int x, int y) id = MOUSE_UP public boolean mouseup(event evt, int x, int y) id = MOUSE_ENTER public boolean mouseenter(event evt, int x, int y id = MOUSE_EXIT public boolean mouseexit(event evt, int x, int y) id = MOUSE_DRAG public boolean mousedrag(event evt, int x, int y) id = MOUSE_MOVE public boolean mousemove(event evt, int x, int y) Para processar um destes eventos deve-se reescrever (override) o respectivo método. Deve ser criado uma subclasse para definir o comportamento pretendido. Nem todos os tipos de eventos são encaminhados por handleevent() para métodos mais específicos. Por isso se se está interessado num evento para o qual não existe nenhum método específico (como por exemplo eventos para scroll bars ), deve-se reescrever ( override ) o método handleevent(). Se se reescreve handleevent() na classe que implementamos, nenhum dos métodos mais específicos será chamado por omissão, a não ser que sejam chamados explicitamente no corpo de handleevent(). A melhor maneira de ultrapassar este problema é testar o evento no qual estamos interessados, e se o evento não é esse, chamar super.handleevent() para que a superclasse que define handleevent() possa processsar todos os outros eventos. Exemplo: public boolean handleevent(event evt) { if (evt.id == Event.MOUSE_DOWN) { // processar o evento mouse down return true; else return super.handleevent(evt); O método handleevent(), e todos os métodos específicos de determinados tipos de eventos, retornam valores booleanos. Se um método de tratamento de eventos retorna false, como todos fazem por omissão, significa que o evento não foi tratado, portanto ele vai ser passado ao container do componente corrente para ver se esse container está interessado no seu processamento. 135

11 Se um método retorna true significa que o evento foi tratado e não é necessário mais processamento sobre esse evento. O facto de os eventos não tratados serem passados para o container é o que permite, por exemplo, tratar os eventos do tipo ACTION_EVENT que são gerados pelos botões (componentes gráficos de interface com o utilizador), reescrevendo o método action(). O sistema de gestão de eventos do AWT (Abstract Window Toolkit) funciona como um sistema de filtragem de eventos. Um dos eventos mais comuns num applet é o clique no mouse. Eventos de clique no mouse ocorrem quando o utilizador clica no mouse algures dentro do applet. Podem-se interceptar os cliques do mouse para desencadear alguma acção ou podem ser usados em conjunto com movimentos do mouse para efectuar outras acções. Quando se clica no mouse geram-se dois eventos: um evento mouse down quando o botão é premido, e um evento mouse up quando o botão é libertado. Estes dois eventos são gerados porque em certas situações associam-se acções diferentes (embora relacionadas) a cada um destes dois eventos. Por exemplo num menu pull-down, o evento mouse down estende o menu e o evento mouse up selecciona um item. Para tratar eventos do mouse deve-se reescrever a definição dos métodos apropriados no applet. Quando ocorre um evento mouse down o browser ou o viewer chamam o seguinte método: public boolean mousedown(event evt, int x, int y) Quando ocorre um evento mouse up é chamado o método: public boolean mouseup(event evt, int x, int y) Estes métodos recebem 3 parâmetros: o evento e as coordenadas x e y onde o evento (mouse down ou mouse up) ocorreram. Sempre que o mouse se move um simples pixel em qualquer direcção um evento mouse move é gerado. Como um evento é gerado por cada pixel de movimento do mouse, mover o mouse de um lado do applet para o outro resulta em centenas de eventos. Há 2 tipos de movimentos do rato: mouse drags onde o movimento ocorre com o botão do mouse premido, que produzem eventos que originam a chamada do método public boolean mousedrag(event evt, int x, int y) 136

12 e movimentos do mouse sem o botão do mouse premido que produzem eventos que originam a chamada do método public boolean mousemove(event evt, int x, int y) Para estes 2 métodos "mouseup() e mousedrag() os argumentos das coordenadas x e y são as novas localizações do mouse e não são a localização de partida. Exemplo: Construa um applet que desenhe um círculo azul quando se clica com o mouse dentro do applet até um máximo de 10 círculos. Cada círculo deve ser desenhado à volta do ponto onde se clica com um diâmetro de 20 pixels. import java.awt.graphics; import java.awt.color; import java.awt.event; public class Pintas extends java.applet.applet { final int MAX = 10; int xpintas[] = new int[max]; int ypintas[] = new int[max]; int npintas = 0; public void init() { setbackground(color.white); public boolean mousedown(event evt, int x, int y) { if (npintas < MAX) { adicionapinta(x,y); return true; else return false; void adicionapinta(int x,int y) { xpintas[npintas] = x; ypintas[npintas] = y; npintas++; repaint(); public void paint(graphics g) { g.setcolor(color.blue); for (int i = 0; i < npintas; i++) { g.filloval(xpintas[i] - 10, ypintas[i] - 10, 20, 20); 137

13 A cor de fundo é colocada no método init(), e não no paint(), porque é uma acção que só é executada uma vez. O método paint() deve ser chamado sempre que um novo pinta é adicionada; se a cor de fundo fosse colocada no método paint(), este método tornar-se-ia desnecessariamente mais lento. Sempre que ocorre um evento mouse down o programa verifica se a quantidade de pintas é menor que 10, adiciona as coordenadas aos respectivos arrays, incrementa a variável que armazena a quantidade de pintas e chama repaint(). O método repaint() efectua um clear e depois chama o método paint(). Por este motivo é necessário de cada vez que uma pinta é adicionada, pintar todas. Para pintar todas as pintas sempre que uma é adicionada, é necessário guardar as coordenadas de todas. Exemplo: Construa um applet que permita desenhar segmentos de recta no ecrã, até o máximo de 10, arrastando o rato de um ponto (início) até outro (extremidade do segmento de recta). Enquanto o rato está a ser arrastado para desenhar uma linha, essa linha deve ser mostrada, na cor azul, desde o ponto de partida até à posição corrente do mouse. import java.awt.graphics; import java.awt.color; import java.awt.event; import java.awt.point; public class Linhas extends java.applet.applet { final int MAX = 10; Point inicios[] = new Point[MAX]; Point fins[] = new Point[MAX]; Point ancora; // principio da linha corrente Point pontocorrente; // fim actual da linha corrente int nlinhas = 0; // numero de linhas public void init() { setbackground(color.white); public boolean mousedown(event evt, int x, int y) { if (nlinhas < MAX) { ancora = new Point(x,y); return true; else return false; public boolean mouseup(event evt, int x, int y) { if (nlinhas < MAX) { adicionalinha(x,y); return true; else return false; 138

14 public boolean mousedrag(event evt, int x, int y) { if (nlinhas < MAX) { pontocorrente = new Point(x,y); repaint(); return true; else return false; void adicionalinha(int x,int y) { inicios[nlinhas] = ancora; fins[nlinhas] = new Point(x,y); nlinhas++; pontocorrente = null; ancora = null; repaint(); public void paint(graphics g) { // desenha as linhas existentes for (int i = 0; i < nlinhas; i++) { g.drawline(inicios[i].x, inicios[i].y, fins[i].x, fins[i].y); // desenha a linha corrente g.setcolor(color.blue); if (pontocorrente!= null) g.drawline(ancora.x,ancora.y, pontocorrente.x, pontocorrente.y); A classe Point é usada para representar as coordenadas x e y de um ponto encapsuladas num simples objecto. Este applet trata 3 eventos (se o número de segmentos de recta armazenados ainda é menor que 10): mouse down: -para colocar o ponto ancora para a linha corrente. mouse drag: - para criar objectos referenciados por pontocorrente contendo a extremidade actual da linha que está a ser desenhada e actualizar o desenho ( repaint() ). mouse up: - para armazenar uma nova linha que une o ponto ancora até ao ponto onde ocorreu este evento e actualizar o desenho. Para animar a linha que está a ser desenhada, quando se arrasta o mouse, movendo-o desordenadamente, é necessário desenhar a linha constantemente entre o ponto ancora e o ponto corrente do mouse o que se faz efectuando repaint() sempre que ocorre mouse drag. Enquanto não se está a desenhar uma linha, o método paint() não deve efectuar o desenho da linha corrente, para o que se coloca anchor e pontocorrente com o valor null. 139

15 Exemplo: /* Construa um applet que permita ao utilizador desenhar (sarrabiscar) com o rato. */ import java.awt.*; import java.applet.*; public class Scribble1 extends Applet { public boolean mousedrag(event evt, int x, int y) { Graphics g = getgraphics(); g.filloval(x, y, 4, 4); return true; // Outras versões import java.awt.*; import java.applet.*; public class Scribble2 extends Applet { int x=0, y=0; public boolean mousedown(event evt, int x1, int y1) { x = x1; y = y1; return true; public boolean mousedrag(event evt, int x1, int y1) { Graphics g = getgraphics(); g.drawline(x, y, x1, y1); x = x1; y = y1; return true; import java.awt.*; import java.util.vector; import java.applet.*; public class Scribble3 extends Applet { Vector linhas = new Vector(100, 100); Vector lincorrente; public boolean mousedown(event evt, int x, int y) { lincorrente = new Vector(100, 100); linhas.addelement(lincorrente); lincorrente.addelement(new Point(x,y)); return true; 140

16 public boolean mousedrag(event evt, int x1, int y1) { Point p = (Point) lincorrente.lastelement(); Graphics g = getgraphics(); g.drawline(p.x, p.y, x1, y1); lincorrente.addelement(new Point(x1,y1)); return true; public void paint(graphics g) { for (int j=0; j < linhas.size(); j++) { lincorrente = (Vector) linhas.elementat(j); Point p = (Point) lincorrente.elementat(0); for (int i=1; i<lincorrente.size(); i++) { Point p1 = (Point) lincorrente.elementat(i); g.drawline(p.x, p.y, p1.x, p1.y); p = p1; Modelo de Eventos 1.1 Há objectos (componentes gráficos de interface com o utilizador) que podem produzir eventos. Um evento a que se pretende responder é enviado para outro objecto que sabe responder convenientemente a esse evento. Este modelo de tratamento de eventos é um modelo de delegação de eventos que permite uma maior flexibilidade de programação. No processamento de um evento intervêm 3 objectos: 1) Um objecto fonte do evento no qual ocorre o evento; é um objecto que pode registar objectos listener para serem notificados se determinados eventos ocorrem. 2) Um objecto listener instância de uma classe que implementa um interface apropriado listener interface o qual, para ser registado, é usado como argumento de um método do objecto fonte do evento. 3) Um objecto evento, criado pelo objecto fonte do evento quando ocorre o evento, que é enviado (pelo objecto fonte do evento) para todos os objectos listeners registados para esse evento (invocando o método apropriado do objecto listener e passando-lhe o objecto evento). A ocorrência de um evento destina-se a causar uma acção, que pode ser realizada pelo próprio objecto ou por outro qualquer objecto. Assim o objecto mais adequado para realizar as acções a serem executadas quando ocorre um evento é o objecto que deve ser registado como listener. O objecto listener ao implementar o interface apropriado significa que possui métodos com as assinaturas correctas para responderem à ocorrência dos eventos. 141

17 Classes internas (Inner classes ) Uma classe interna ( inner class ) tem acesso aos membros da classe que a contém. A classe interna mantém uma referência ao objecto particular da classe que a contém e que criou o objecto. Um acesso a um membro da classe envolvente usa essa referência (escondida) para seleccionar esse membro. Um objecto de uma classe interna só pode ser criado em associação com um objecto da classe envolvente. O processo de construção requer a inicialização da referência ao objecto da classe envolvente e o compilador dará erro se não pode aceder a essa referência. Uma referência ao objecto da classe exterior obtém-se através do nome da classe exterior seguido de ponto e seguido de this. As 3 páginas seguintes contêm tabelas dos principais eventos gerados nos componentes gráficos, dos correspondentes interfaces que devem ser implementados pelos objectos listeners, e dos métodos invocados para os objectos listeners (passando-lhe o objecto evento como parâmetro) quando os eventos ocorrem. 142

. (x,y) Programação III. Interface Gráfica - AWT. Interface Gráfica AWT Jocélio Passos joceliodpassos@bol.com.br

. (x,y) Programação III. Interface Gráfica - AWT. Interface Gráfica AWT Jocélio Passos joceliodpassos@bol.com.br Programação III Interface Gráfica AWT Jocélio Passos joceliodpassos@bol.com.br AWT Abstract Windowing ToolKit kit de Ferramentas Abstrato para Janelas Componentes GUI originais Pacote java.awt Deitel Capítulo

Leia mais

Como usar a documentaçã

Como usar a documentaçã Java 2 Standard Edition Como usar a documentaçã ção da API Java 2 Helder da Rocha www.argonavis.com.br 1 Documentação Aprender a usar a documentação é essencial para quem deseja desenvolver aplicações

Leia mais

Desenvolvendo aplicações

Desenvolvendo aplicações Desenvolvendo aplicações 22 para a Web Uma aplicação Java pode ser executada sem modificação em qualquer plataforma que tenha a máquina virtual Java instalada. Esta característica faz com que as aplicações

Leia mais

Interfaces Gráficas: Interações Complexas

Interfaces Gráficas: Interações Complexas Interfaces Gráficas: 21 Interações Complexas 21.5 O contexto gráfico Os componentes de uma interface gráfica são desenhados na tela do computador a partir de primitivas que permitem a construção de linhas,

Leia mais

ou ainda ser chamado um método que pertença a um objeto, que pertence ao objeto em causa:

ou ainda ser chamado um método que pertença a um objeto, que pertence ao objeto em causa: OBJETOS, CLASSES E MÉTODOS 83 Esta sintaxe também é válida no caso em que existe encadeamento de objetos, uma vez que dentro de um objeto podem existir outros objetos. Nesse caso, continuam a usar-se pontos

Leia mais

Programação Orientada a Objetos e Java - Introdução. Carlos Lopes

Programação Orientada a Objetos e Java - Introdução. Carlos Lopes Programação Orientada a Objetos e Java - Introdução Carlos Lopes POO e Java Objetivo: proporcionar uma visão dos conceitos de POO e do seu uso na estruturação dos programas em Java. Classes e objetos em

Leia mais

Programação Orientada a Objetos (DPADF 0063)

Programação Orientada a Objetos (DPADF 0063) Programação Orientada a Objetos (DPADF 0063) Aula 11 Applets Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas para Internet Prof. Bruno

Leia mais

Métodos da classe Applet Criando applets Passando parâmetros de uma página HTML Migrando de uma aplicação para uma applet Applets vs.

Métodos da classe Applet Criando applets Passando parâmetros de uma página HTML Migrando de uma aplicação para uma applet Applets vs. Applets Métodos da classe Applet Criando applets Passando parâmetros de uma página HTML Migrando de uma aplicação para uma applet Applets vs. Segurança l Objetivos Migrar de uma aplicação para uma applet

Leia mais

Adicionando Caixas de Verificação no seu Programa Java

Adicionando Caixas de Verificação no seu Programa Java Adicionando Caixas de Verificação no seu Programa Java Priscila Gomes Neste tutorial iremos falar sobre os aspectos básicos de uma caixa de verificação: quais os tipos, quando e como utiliza-las, como

Leia mais

Programação Visual em Java

Programação Visual em Java Programação Visual em Java 1 Sumário Introdução Contentores Componentes Layouts Eventos Exemplos 2 Introdução Interfaces gráficas são compostas por: Contentores Janelas, painéis Componentes botões, menus,

Leia mais

Programação III. Interface Gráfica - Swing. Interface Gráfica Swing Jocélio Passos joceliodpassos@bol.com.br. Interface Gráfica - Swing

Programação III. Interface Gráfica - Swing. Interface Gráfica Swing Jocélio Passos joceliodpassos@bol.com.br. Interface Gráfica - Swing Programação III Interface Gráfica Swing Jocélio Passos joceliodpassos@bol.com.br Deitel Capítulo 11 : Imagens gráficas e Java 2D Capítulo 12 : Componentes Básicos Capítulo 13 : Componentes Avançados GUI

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 2: Classes e objectos LEEC@IST Java 1/24 Classes (1) Sintaxe Qualif* class Ident [ extends IdentC] [ implements IdentI [,IdentI]* ] { [ Atributos Métodos ]* Qualif:

Leia mais

Microsoft Office FrontPage 2003

Microsoft Office FrontPage 2003 Instituto Politécnico de Tomar Escola Superior de Gestão Área Interdepartamental de Tecnologias de Informação e Comunicação Microsoft Office FrontPage 2003 1 Microsoft Office FrontPage 2003 O Microsoft

Leia mais

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática Folha 1-1 Introdução à Linguagem de Programação JAVA 1 Usando o editor do ambiente de desenvolvimento JBUILDER pretende-se construir e executar o programa abaixo. class Primeiro { public static void main(string[]

Leia mais

CRIAR UMA ANIMAÇÃO BÁSICA NO FLASH MX

CRIAR UMA ANIMAÇÃO BÁSICA NO FLASH MX CRIAR UMA ANIMAÇÃO BÁSICA NO FLASH MX Introdução Este tutorial vai-te ajudar a compreender os princípios básicos do Flash MX - tal como layers, tweens, cores, texto, linhas e formas. No final deste tutorial

Leia mais

Java First-Tier: Aplicações. Construção de Applets. Applets. Applets: Internet Intranet

Java First-Tier: Aplicações. Construção de Applets. Applets. Applets: Internet Intranet Java First-Tier: Aplicações Construção de Applets Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Applets l Programas Java que executam em browsers java enabled JVM que interpreta

Leia mais

Introdução à linguagem Java

Introdução à linguagem Java Universidade da Região da Campanha Semana Acadêmica da Informática Introdução à linguagem Java Alexsander da Rosa http://www.urcamp.tche.br/~alexsand/ Bagé-RS, 03 de novembro

Leia mais

Programação Java. Construção de Applets

Programação Java. Construção de Applets Programação Java Construção de Applets Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Applets Programas Java que executam em browsers java enabled JVM que interpreta os bytecodes

Leia mais

Capítulo 3. Programação por objectos em Java

Capítulo 3. Programação por objectos em Java Capítulo 3. Programação por objectos em Java 1/46 Índice Indice 3.1 - Qualificadores de visualização 3.2 - Classe 3.3 - Objecto 3.4 - Métodos 3.5 - Herança 3.6 - Reescrita de métodos 3.7 - Classes abstractas

Leia mais

JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: imagecomposite FACULDADE DE TECNOLOGIA SENAC PELOTAS

JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: imagecomposite FACULDADE DE TECNOLOGIA SENAC PELOTAS JAVA APLICAÇÕES GRÁFICAS Propriedades Utilizadas: imagecomposite FACULDADE DE TECNOLOGIA SENAC PELOTAS Nome do aluno: Diego Silva de Oliveira Identificação da Turma: 070801805 Data: 16/05/2010 imagecomposite

Leia mais

3 Classes e instanciação de objectos (em Java)

3 Classes e instanciação de objectos (em Java) 3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem

Leia mais

De seguida vamos importar a imagem da lupa File > Import e abrir a imagem Lupa.png que está no Cd-rom.

De seguida vamos importar a imagem da lupa File > Import e abrir a imagem Lupa.png que está no Cd-rom. LUPA Introdução A base que está por detrás deste tutorial são duas imagens, uma com 50% do tamanho original colocada numa layer e outra imagem com o tamanho original colocada numa Mask layer dentro de

Leia mais

Java 2 Standard Edition Como criar classes e objetos

Java 2 Standard Edition Como criar classes e objetos Java 2 Standard Edition Como criar classes e objetos Helder da Rocha www.argonavis.com.br 1 Assuntos abordados Este módulo explora detalhes da construção de classes e objetos Construtores Implicações da

Leia mais

O programa abaixo exemplifica o uso da classe Image para carregar e mostrar uma imagem localizada em um arquivo.

O programa abaixo exemplifica o uso da classe Image para carregar e mostrar uma imagem localizada em um arquivo. 7. Carregando e mostrando imagens locais Esta aula complementa os estudos de programação de interfaces gráficas em Java mostrando como podemos carregar imagens de arquivos locais ou da Internet para uso

Leia mais

JAVA APLICAÇÕES GRÁFICAS Propriedade Utilizada: FontSizeAnimation

JAVA APLICAÇÕES GRÁFICAS Propriedade Utilizada: FontSizeAnimation JAVA APLICAÇÕES GRÁFICAS Propriedade Utilizada: FontSizeAnimation FACULDADE DE TECNOLOGIA SENAC PELOTAS Nome do aluno: Paulo Renato S. Veiga Identificação da Turma: 205 Noite Data: 16/05/10 1 Nome da Propriedade

Leia mais

GeoMafra Portal Geográfico

GeoMafra Portal Geográfico GeoMafra Portal Geográfico Nova versão do site GeoMafra Toda a informação municipal... à distância de um clique! O projecto GeoMafra constitui uma ferramenta de trabalho que visa melhorar e homogeneizar

Leia mais

A linguagem JAVA. Programação na Web. Luís Manuel Borges Gouveia

A linguagem JAVA. Programação na Web. Luís Manuel Borges Gouveia A linguagem JAVA Programação na Web Luís Manuel Borges Gouveia Motivação início de 1997 mais de 50 milhões de utilizador da Internet aumento de utilizadores a uma taxa de 100% ano estimam-se mais de 200

Leia mais

Módulo 7. Interface Gráfica com o Usuário GUI - Introdução. Programação Orientada a Objetos I Java (Rone Ilídio)

Módulo 7. Interface Gráfica com o Usuário GUI - Introdução. Programação Orientada a Objetos I Java (Rone Ilídio) Módulo 7 Interface Gráfica com o Usuário GUI - Introdução Programação Orientada a Objetos I Java (Rone Ilídio) Interface Gráfica com o Usuário Os elementos gráficos utilizados estão no pacote javax.swing.*

Leia mais

ZS Rest. Manual Avançado. Gestão de Stocks Local. v2011

ZS Rest. Manual Avançado. Gestão de Stocks Local. v2011 Manual Avançado Gestão de Stocks Local v2011 1 1. Índice 2. Introdução... 3 3. Iniciar o ZSRest FrontOffice... 4 4. Produto... 5 b) Activar gestão de stocks... 5 i. Opção: Faz gestão de stocks... 5 ii.

Leia mais

1) De acordo com o trecho de código escrito na linguagem JAVA, responda a questão abaixo:

1) De acordo com o trecho de código escrito na linguagem JAVA, responda a questão abaixo: 1) De acordo com o trecho de código escrito na linguagem JAVA, responda a questão abaixo: boolean[][] bool = new boolean[5][5]; for(int v = 0; v < bool.length; v++) { for(int f = 0; f < bool[v].length;

Leia mais

Lista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição

Lista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição Lista de Contas Lista de Contas: Assinatura null Quais são os métodos necessários? class ListaDeContas { void inserir (Conta c) { void retirar (Conta c) { Conta procurar (String num) { Listas de Contas:

Leia mais

Jogo do NEEC. Primeiramente, criamos uma nova Actividade. File > New > Class

Jogo do NEEC. Primeiramente, criamos uma nova Actividade. File > New > Class Jogo do NEEC Jogo do NEEC Primeiramente, criamos uma nova Actividade File > New > Class Source folder: JogoDoNEEC/src Package: org.neecist.jogodoneec Name: JogoDoNEEC Superclass: android.app.activity Browse

Leia mais

O desenvolvimento de aplicações em Programação com Objetos. João D. Pereira Nuno Mamede

O desenvolvimento de aplicações em Programação com Objetos. João D. Pereira Nuno Mamede O desenvolvimento de aplicações em Programação com Objetos João D. Pereira Nuno Mamede Outubro de 2012 Resumo O objetivo deste documento é apresentar o modo de desenvolvimento de aplicações a usar durante

Leia mais

Programação Externa. capítulo 3.

Programação Externa. capítulo 3. capítulo 3. Programação Externa A partir da versão 2.0, o VRML possui capacidade de adicionar alguns comportamentos aos objectos, tais como animação, detecção de acções do utilizador, execução de clips

Leia mais

Especialização em Engenharia de Software - CEUT

Especialização em Engenharia de Software - CEUT Até aqui Programação com interfaces gráficas Sérgio Soares scbs@cin.ufpe.br Criamos a infra-estrutura para a aplicação bancária classes que representam os tipos de conta classe que implementa regras de

Leia mais

ZSRest/ZSPos. Manual de Stocks. BackOffice

ZSRest/ZSPos. Manual de Stocks. BackOffice BackOffice 1 1. Índice 2. Introdução... 3 3. Iniciar o ZSRest/ZSPos FrontOffice... 4 4. Produto... 5 Activar gestão de stocks... 5 5. Armazém... 7 a) Adicionar Armazém... 8 b) Modificar Armazém... 8 c)

Leia mais

Capítulo 9 Desenho de classes

Capítulo 9 Desenho de classes Capítulo 9 Desenho de classes Escolha de classes a implementar Coesão e acoplamento Minimização de efeitos colaterais Consolidação de conceitos: métodos e campos estáticos, abrangência de variáveis locais

Leia mais

Centro de Competência Entre Mar e Serra. Guia

Centro de Competência Entre Mar e Serra. Guia SMART Notebook Software Guia O Software Notebook permite criar, organizar e guardar notas num quadro interactivo SMART Board (em modo projectado e não-projectado), num computador pessoal e, em seguida,

Leia mais

GeoMafra SIG Municipal

GeoMafra SIG Municipal GeoMafra SIG Municipal Nova versão do site GeoMafra Toda a informação municipal... à distância de um clique! O projecto GeoMafra constitui uma ferramenta de trabalho que visa melhorar e homogeneizar a

Leia mais

PROGRAMANDO EM C# ORIENTADO A OBJETOS

PROGRAMANDO EM C# ORIENTADO A OBJETOS PROGRAMANDO EM C# ORIENTADO A OBJETOS AGENDA MÓDULO 4 IDE Visual Studio e edições Exemplos IDE - INTEGRATED DEVELOPMENT ENVIRONMENT IDE, Ambiente de Desenvolvimento Integrado. Uma IDE é uma ferramenta

Leia mais

Exemplo 1. Um programa que cria uma instância de uma classe que herda da classe Frame

Exemplo 1. Um programa que cria uma instância de uma classe que herda da classe Frame 6. Como aplicações gráficas funcionam em Java? Todas as aplicações gráficas em Java usam instâncias de classes existentes, que por serem parte da linguagem podem ser executadas em todas as versões de Java

Leia mais

INSTALAÇÃO E OPERAÇÃO DE SISTEMAS INFORMÁTICOS Curso Educação e Formação de Adultos Nível Básico. Access 2003

INSTALAÇÃO E OPERAÇÃO DE SISTEMAS INFORMÁTICOS Curso Educação e Formação de Adultos Nível Básico. Access 2003 Curso Educação e Formação de Adultos Nível Básico Access 2003 28/07/2009 [Manual de Microsoft Access.] FICHA TÉCNICA DESIGNAÇÃO DA COLECTÂNEA Manual de Microsoft Access AUTOR Carlos Serranheira DESTINATÁRIOS

Leia mais

Programação Orientada a Objetos em Java. Threads Threads Threads. Threads

Programação Orientada a Objetos em Java. Threads Threads Threads. Threads Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Programação Orientada a Objetos em Java Threads Threads Threads Threads Professor: César Melo Slides baseados

Leia mais

Índice: Tipo de Aplicações em Visual Basic Componentes do Visual Basic

Índice: Tipo de Aplicações em Visual Basic Componentes do Visual Basic O tutorial a seguir,é feito para iniciantes em Visual Basic, que no qual, pode ajudar alguns que querem saber algumas funcções. Que começe o Tutorial ^^ Índice: Tipo de Aplicações em Visual Basic Componentes

Leia mais

APONTAMENTOS SOBRE WINDOWS

APONTAMENTOS SOBRE WINDOWS APONTAMENTOS SOBRE WINDOWS Moldura da janela 1 1. JANELAS As janelas são objectos fundamentais do interface gráfico, já que é a partir delas que a informação, comandos e controlos são organizados e apresentados

Leia mais

Manual PowerPoint 2000

Manual PowerPoint 2000 Manual PowerPoint 2000 Índice 1. INTRODUÇÃO 1 2. DIRECTRIZES PARA APRESENTAÇÕES DE DIAPOSITIVOS 1 3. ECRÃ INICIAL 2 4. TIPOS DE ESQUEMA 2 5. ÁREA DE TRABALHO 3 5.1. ALTERAR O ESQUEMA AUTOMÁTICO 4 6. MODOS

Leia mais

Objectivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs

Objectivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs Interfaces Gráficas e Eventos - 1 Objectivos:. Construir programas com interfaces gráficas Graphical User Interface (GUI) application programs - Utilizar as classes JFrame, JButton, JLabel, ImageIcon,

Leia mais

Programação Gráfica em Java.

Programação Gráfica em Java. Programação Gráfica em Java. Objetivo: Ao final da aula o aluno deverá ser capaz de desenvolver a aplicação gráfica ilustrada ao lado. A interface gráfica será simples, composta por elementos de menus.

Leia mais

A INTERNET COMO FERRAMENTA AUXILIAR NO ENSINO DE MECÂNICA COMPUTACIONAL

A INTERNET COMO FERRAMENTA AUXILIAR NO ENSINO DE MECÂNICA COMPUTACIONAL A INTERNET COMO FERRAMENTA AUXILIAR NO ENSINO DE MECÂNICA COMPUTACIONAL Manoel Theodoro Fagundes Cunha Sergio Scheer Universidade Federal do Paraná, Setor de Tecnologia, Centro de Estudos de Engenharia

Leia mais

Capítulo 23. às s Interfaces Gráficas. Introdução. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Capítulo 23. às s Interfaces Gráficas. Introdução. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra Capítulo 23 Introdução às s Interfaces Gráficas Objetivos do Capítulo Apresentar as duas APIs aplicáveis ao desenvolvimento de interfaces gráficas: o AWT e o Swing. Explorar algumas classes do AWT aplicáveis

Leia mais

Manual do Gestor de Templates

Manual do Gestor de Templates Manual do Gestor de Templates Versão - Revisão 2 200.07.09 Índice Introdução... 3 2 O que muda com o Gestor de Templates... 3 3 Implicação da utilização do Gestor de Templates... 4 4 Lista de Funcionalidades...

Leia mais

Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread.

Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread. 5 THREADS Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread. 5.1 VISÃO GERAL Uma definição mais abrangente para threads é considerá-lo

Leia mais

Curso Adonai QUESTÕES Disciplina Linguagem JAVA

Curso Adonai QUESTÕES Disciplina Linguagem JAVA 1) Qual será o valor da string c, caso o programa rode com a seguinte linha de comando? > java Teste um dois tres public class Teste { public static void main(string[] args) { String a = args[0]; String

Leia mais

História da linguagem Java

História da linguagem Java Programação Orientada por Objectos 1 História da linguagem Java Os microprocessadores revolucionaram a indústria dos computadores. Pensa-se que a próxima área na qual os microprocessadores terão um profundo

Leia mais

O Stage onde estão os gráficos, videos, botões etc que irão aparecer durante o play back.

O Stage onde estão os gráficos, videos, botões etc que irão aparecer durante o play back. O que é o Flash? Copyright 2006/2007 Jorge Mota- Multimédia I/ISTEC O flash é uma ferramenta autor, que pode ser usada por designers, editores de conteúdos, engenheiros multimédia e programadores para

Leia mais

1 2 3 W O R K S H O P 4 5 6 W O R K S H O P 7 W O R K S H O P 8 9 10 Instruções gerais para a realização das Propostas de Actividades Para conhecer em pormenor o INTERFACE DO FRONTPAGE clique aqui 11 CONSTRUÇÃO

Leia mais

A VISTA BACKSTAGE PRINCIPAIS OPÇÕES NO ECRÃ DE ACESSO

A VISTA BACKSTAGE PRINCIPAIS OPÇÕES NO ECRÃ DE ACESSO DOMINE A 110% ACCESS 2010 A VISTA BACKSTAGE Assim que é activado o Access, é visualizado o ecrã principal de acesso na nova vista Backstage. Após aceder ao Access 2010, no canto superior esquerdo do Friso,

Leia mais

Os elementos básicos do Word

Os elementos básicos do Word Os elementos básicos do Word 1 Barra de Menus: Permite aceder aos diferentes menus. Barra de ferramentas-padrão As ferramentas de acesso a Ficheiros: Ficheiro novo, Abertura de um documento existente e

Leia mais

Ajax Asynchronous JavaScript and Xml

Ajax Asynchronous JavaScript and Xml Ajax Asynchronous JavaScript and Xml Ajax permite construir aplicações Web mais interactivas, responsivas, e fáceis de usar que aplicações Web tradicionais. Numa aplicação Web tradicional quando se prime

Leia mais

FBV - Linguagem de Programação II. Um pouco sobre Java

FBV - Linguagem de Programação II. Um pouco sobre Java FBV - Linguagem de Programação II Um pouco sobre Java História 1992: um grupo de engenheiros da Sun Microsystems desenvolve uma linguagem para pequenos dispositivos, batizada de Oak Desenvolvida com base

Leia mais

Criando documentação com javadoc

Criando documentação com javadoc H Criando documentação com javadoc H.1 Introdução Neste apêndice, fornecemos uma introdução a javadoc ferramenta utilizada para criar arquivos HTML que documentam o código Java. Essa ferramenta é usada

Leia mais

Criar um novo projecto

Criar um novo projecto Criar um novo projecto Criar um novo projecto (2) Criar um novo projecto (3) Criar um novo projecto (4) Criar um novo projecto (5) Criar um novo projecto (6) Estrutura do projecto O Eclipse criou-nos um

Leia mais

Curso de Iniciação ao Access Basic (I) CONTEÚDOS

Curso de Iniciação ao Access Basic (I) CONTEÚDOS Curso de Iniciação ao Access Basic (I) CONTEÚDOS 1. A Linguagem Access Basic. 2. Módulos e Procedimentos. 3. Usar o Access: 3.1. Criar uma Base de Dados: 3.1.1. Criar uma nova Base de Dados. 3.1.2. Criar

Leia mais

Unidade IV: Ponteiros, Referências e Arrays

Unidade IV: Ponteiros, Referências e Arrays Programação com OO Acesso em Java a BD Curso: Técnico em Informática Campus: Ipanguaçu José Maria Monteiro Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento Clayton Maciel de Informática

Leia mais

ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento Eclipse Introdução à Linguagem de Programação JAVA

ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento Eclipse Introdução à Linguagem de Programação JAVA P. Fazendeiro & P. Prata POO FP1/1 ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento Eclipse Introdução à Linguagem de Programação JAVA 0 Inicie o ambiente de desenvolvimento integrado

Leia mais

WINDOWS. O Windows funciona como um Sistema Operativo, responsável pelo arranque do computador.

WINDOWS. O Windows funciona como um Sistema Operativo, responsável pelo arranque do computador. WINDOWS O AMBIENTE DE TRABALHO DO WINDOWS O Windows funciona como um Sistema Operativo, responsável pelo arranque do computador. Um computador que tenha o Windows instalado, quando arranca, entra directamente

Leia mais

Ferramentas Web, Web 2.0 e Software Livre em EVT

Ferramentas Web, Web 2.0 e Software Livre em EVT E s t u d o s o b r e a i n t e g r a ç ã o d e f e r r a m e n t a s d i g i t a i s n o c u r r í c u l o d a d i s c i p l i n a d e E d u c a ç ã o V i s u a l e T e c n o l ó g i c a Anim8or M a n

Leia mais

Desenvolvimento de aplicações Web. Java Server Pages

Desenvolvimento de aplicações Web. Java Server Pages Desenvolvimento de aplicações Web Java Server Pages Hamilton Lima - athanazio@pobox.com 2003 Como funciona? Servidor web 2 Internet 1 Browser 3 Arquivo jsp 4 JSP Compilado 2 Passo a passo 1 browser envia

Leia mais

USANDO APPLETS NO NETBEANS (WEB APPLICATION)...E A APPLET CHAMA ALGUM PACOTE EXTERNO (por Luis Alberto M Palhares de Melo Julho/2011)

USANDO APPLETS NO NETBEANS (WEB APPLICATION)...E A APPLET CHAMA ALGUM PACOTE EXTERNO (por Luis Alberto M Palhares de Melo Julho/2011) USANDO APPLETS NO NETBEANS (WEB APPLICATION)......E A APPLET CHAMA ALGUM PACOTE EXTERNO (por Luis Alberto M Palhares de Melo Julho/2011) PASSO 1 Na estrutura do Netbeans vamos ter: Pacote externo (aqui

Leia mais

Objetivos do Curso. Você será capaz de:

Objetivos do Curso. Você será capaz de: Objetivos do Curso Ao término do curso você entenderá: Aplicativos Java e applets Tipos de dados primitivos Fluxo de Controle em Java Métodos Outros: exceções, multithreading, multimedia, I/O, redes. Objetivos

Leia mais

ANEXO. Manual do utilizador

ANEXO. Manual do utilizador ANEXO Manual do utilizador A PARTE 1 Menu Principal A janela principal da aplicação é composta por uma zona destinada a mostrar a informação analítica (rodapé) e pelo Menu Principal, o qual contém opções

Leia mais

Entender princípios de projeto. Capacitação para construir GUIs. Entender os pacotes que contém componentes de GUI, e as classes e interfaces de

Entender princípios de projeto. Capacitação para construir GUIs. Entender os pacotes que contém componentes de GUI, e as classes e interfaces de Parte I Entender princípios de projeto. Capacitação para construir GUIs. Entender os pacotes que contém componentes de GUI, e as classes e interfaces de tratamentos de eventos. Criar e manipular botões,

Leia mais

Mapas. Visualização de informação geográfica; Consulta e edição (mediante permissões) de informação geográfica;

Mapas. Visualização de informação geográfica; Consulta e edição (mediante permissões) de informação geográfica; Mapas Destinado especialmente aos Utilizadores do GEOPORTAL, nele são descritas e explicadas as diferentes funcionalidades existentes no FrontOffice (GEOPORTAL). O GEOPORTAL é baseado em tecnologia Web,

Leia mais

António Moura Filipe Moreira

António Moura Filipe Moreira António Moura Filipe Moreira Ano Lectivo 2001/2002 1 Objectivos...1 2 Arquitectura do programa...2 3 Algoritmos e classes...4 3.1 Algoritmo para atendimento dos pedidos de chamada...4 3.2 Predio...4 3.3

Leia mais

604 wifi. Visite www.archos.com/manuals para transferir a versão mais recente deste manual.

604 wifi. Visite www.archos.com/manuals para transferir a versão mais recente deste manual. 604 wifi FUNÇÕES WIFI e Internet Suplemento ao Manual do Utilizador ARCHOS 504/604 Versão 1.2 Visite www.archos.com/manuals para transferir a versão mais recente deste manual. Este manual contém informações

Leia mais

Outlook 2003. Nivel 1. Rui Camacho

Outlook 2003. Nivel 1. Rui Camacho Outlook 2003 Nivel 1 Objectivos gerais Enviar e Responder a mensagens de correio electrónico, e gestão de contactos, marcação de compromissos e trabalhar com notas. Objectivos específicos Começar a trabalhar

Leia mais

GraphicsLib Biblioteca Gráfica 2D. Documentação

GraphicsLib Biblioteca Gráfica 2D. Documentação GraphicsLib Biblioteca Gráfica 2D Documentação Edirlei Soares de Lima elima@inf.puc-rio.br Sumário 1 Instalação e Configuração... 4 2 Manual de Utilização... 10 2.1 Estrutura de um Programa... 10 2.2 Loop

Leia mais

JSP - ORIENTADO A OBJETOS

JSP - ORIENTADO A OBJETOS JSP Orientação a Objetos... 2 CLASSE:... 2 MÉTODOS:... 2 Método de Retorno... 2 Método de Execução... 2 Tipos de Dados... 3 Boolean... 3 Float... 3 Integer... 4 String... 4 Array... 4 Primeira:... 4 Segunda:...

Leia mais

EIC. Projecto I. Manual do Utilizador. Vídeo Vigilância Abordagem Open Source. Curso: Engenharia de Informática e Comunicações Ano Lectivo: 2005/2006

EIC. Projecto I. Manual do Utilizador. Vídeo Vigilância Abordagem Open Source. Curso: Engenharia de Informática e Comunicações Ano Lectivo: 2005/2006 EIC Engenharia de Informática e Comunicações Morro do Lena, Alto Vieiro Apart. 4163 2401 951 Leiria Tel.: +351 244 820 300 Fax.: +351 244 820 310 E-mail: estg@estg.iplei.pt http://www.estg.iplei.pt Engenharia

Leia mais

Unidade 4 Concepção de WEBSITES. Fundamentos do planeamento de um website 1.1. Regras para um website eficaz 1.1.1.

Unidade 4 Concepção de WEBSITES. Fundamentos do planeamento de um website 1.1. Regras para um website eficaz 1.1.1. Unidade 4 Concepção de WEBSITES Fundamentos do planeamento de um website 1.1. Regras para um website eficaz 1.1.1. Sobre o conteúdo 1 Regras para um website eficaz sobre o conteúdo Um website é composto

Leia mais

CAPA PARA OS CABOS DA CABEÇA

CAPA PARA OS CABOS DA CABEÇA CAPA PARA OS CABOS DA CABEÇA COMPONENTES Entre as peças entregues com este fascículo encontra-se uma espécie de tubo preto para reunir e proteger os cabos que saem da cabeça e vão ao tronco de O SEU ROBOT.

Leia mais

O que é o Javascript?

O que é o Javascript? O que é o Javascript? JavaScript é uma linguagem para criação de Home-Pages. Funções escritas em JavaScript podem ser embutidas dentro de seu documento HTML. Com JavaScript você tem muitas possibilidades

Leia mais

OBJECTIVO Primeiros passos no processamento de texto

OBJECTIVO Primeiros passos no processamento de texto FICHA 0 OBJECTIVO Primeiros passos no processamento de texto Antes de começar a elaborar documentos com o Word é necessário que saiba o essencial sobre o funcionamento deste processador de texto. Não menos

Leia mais

Java Linguagem de programação

Java Linguagem de programação APLICAÇÕES GUI COM AWT Aplicações gráficas são aquelas destinadas à execução dentro dos ambientes gráficos oferecidos por vários sistemas operacionais. Uma GUI [Graphical User Interface é um ambiente pictórico

Leia mais

Servlets e Applets, funcionamento e comparativo.

Servlets e Applets, funcionamento e comparativo. Servlets e Applets, funcionamento e comparativo. Airon Rabel Teixeira Rua Guarapuava Joinville SC airon@ymail.com Resumo: Este artigo explica de maneira breve o funcionamento de servlets e applets, mostrando

Leia mais

Segurança 24, Lda VIDEOGRAVADOR DIGITAL EM DISCO DURO TRANSMISOR POR TCP-IP SERVIDOR WEB MANUAL DO UTILIZADOR

Segurança 24, Lda VIDEOGRAVADOR DIGITAL EM DISCO DURO TRANSMISOR POR TCP-IP SERVIDOR WEB MANUAL DO UTILIZADOR VIDEOGRAVADOR DIGITAL EM DISCO DURO TRANSMISOR POR TCP-IP SERVIDOR WEB MANUAL DO UTILIZADOR Capítulo 4 Guia Básico de Operação 4.1 Ligar o DVR Nota: Certifique-se que liga correctamente os conectores de

Leia mais

8. Procure Saber Mais Sobre 41 Referências Bibliográficas 42

8. Procure Saber Mais Sobre 41 Referências Bibliográficas 42 Apostila de JAVA Sumário 1. Introdução 03 1.1. O que é JAVA? 03 1.2. O que é uma Applet 03 1.3. O que é uma Aplicação 03 1.4. O que é o Appletviewer 03 1.5. O que é Applet no WWW 03 1.6. Criando uma Aplicação

Leia mais

1. INTRODUÇÃO. 1.1. O que é JAVA? 1.2. O que é uma APPLET? 1.3. O que é uma APLICAÇÃO? 1.4. O que é o APPLETVIEWER? 1.5. O que é APPLET no WWW

1. INTRODUÇÃO. 1.1. O que é JAVA? 1.2. O que é uma APPLET? 1.3. O que é uma APLICAÇÃO? 1.4. O que é o APPLETVIEWER? 1.5. O que é APPLET no WWW Apostila de JAVA Sumário 1. Introdução 03 2. O que é JAVA? 03 3. O que é uma Applet 03 4. O que é uma Aplicação 03 5. O que é o Appletviewer 03 6. O que é Applet no WWW 03 7. Criando uma Aplicação 04 8.

Leia mais

Microsoft Visual Studio Express 2012 for Windows Desktop

Microsoft Visual Studio Express 2012 for Windows Desktop Microsoft Visual Studio Express 2012 for Windows Desktop Apresentação da ferramenta Professor: Danilo Giacobo Página pessoal: www.danilogiacobo.eti.br E-mail: danilogiacobo@gmail.com 1 Introdução Visual

Leia mais

Guião de Introdução ao Eclipse IDE Índice

Guião de Introdução ao Eclipse IDE Índice Índice 1. Introdução... 2 1.1. O que é um ambiente de desenvolvimento (IDE)?... 2 1.2. Visão geral sobre o Eclipse IDE... 2 2. Iniciar o Eclipse... 3 2.1. Instalação... 3 2.2. Utilizar o Eclipse... 3 3.

Leia mais

Primitivas Gráficas. Prof. Márcio Bueno {cgtarde,cgnoite}@marciobueno.com. Fonte: Material do Prof. Robson Pequeno de Sousa e do Prof.

Primitivas Gráficas. Prof. Márcio Bueno {cgtarde,cgnoite}@marciobueno.com. Fonte: Material do Prof. Robson Pequeno de Sousa e do Prof. Primitivas Gráficas Prof. Márcio Bueno {cgtarde,cgnoite}@marciobueno.com Fonte: Material do Prof. Robson Pequeno de Sousa e do Prof. Robson Lins Traçado de Primitivas em Dispositivos Matriciais Conversão

Leia mais

Instituto Politécnico de Setúbal Escola Superior de Educação de Setúbal. Formação Contínua 1999/2000. Filomena Izidro

Instituto Politécnico de Setúbal Escola Superior de Educação de Setúbal. Formação Contínua 1999/2000. Filomena Izidro Instituto Politécnico de Setúbal Formação Contínua 1999/2000 Filomena Izidro Setúbal 2000 1. APRESENTAÇÃO DO PROGRAMA PAINT SHOP PRO 5 O PSP 5 é um programa que permite o tratamento de imagens. Nome do

Leia mais

geral@centroatlantico.pt www.centroatlantico.pt Impressão e acabamento: Inova 1ª edição: Novembro de 2004

geral@centroatlantico.pt www.centroatlantico.pt Impressão e acabamento: Inova 1ª edição: Novembro de 2004 FICHEIROS COM EXEMPLOS Envie um e-mail* para software@centroatlantico.pt para conhecer os endereços de Internet de onde poderá fazer o download dos ficheiros com os exemplos deste livro. Reservados todos

Leia mais

Programação Concorrente em java - Exercícios Práticos Abril 2004

Programação Concorrente em java - Exercícios Práticos Abril 2004 Programação Concorrente em java - Exercícios Práticos Abril 2004 1. Introdução As threads correspondem a linhas de controlo independentes no âmbito de um mesmo processo. No caso da linguagem JAVA, é precisamente

Leia mais

Java. Java. Treinamento Java. Desenvolvedores do Material. ƒ Edmilson Bellini Chiavegatto (Analista de Sistemas) Fátima Pires. (Analista de Sistemas)

Java. Java. Treinamento Java. Desenvolvedores do Material. ƒ Edmilson Bellini Chiavegatto (Analista de Sistemas) Fátima Pires. (Analista de Sistemas) Treinamento Instrutores : Marcelo Araujo Franco Fátima Pires 1 Desenvolvedores do Material Teoria e Prática ƒ Edmilson Bellini Chiavegatto (Analista de Sistemas) e Orientação a Objetos ƒ Fátima Pires (Analista

Leia mais

Análise de Programação

Análise de Programação Análise de Programação Conceitos Avançados da Linguagem de Programação Java Prof Gilberto B Oliveira Encapsulamento Proteger o dado dentro de uma classe (capsula segura) Facilita o uso da classe por outros

Leia mais

Microsoft Windows. Aspectos gerais

Microsoft Windows. Aspectos gerais Aspectos gerais É um sistema operativo desenvolvido pela Microsoft Foi desenhado de modo a ser fundamentalmente utilizado em computadores pessoais Veio substituir o sistema operativo MS-DOS e as anteriores

Leia mais

O AMBIENTE DE TRABALHO DO WINDOWS

O AMBIENTE DE TRABALHO DO WINDOWS O AMBIENTE DE TRABALHO DO WINDOWS O Windows funciona como um Sistema Operativo, responsável pelo arranque do computador. Um computador que tenha o Windows instalado, quando arranca, entra directamente

Leia mais

Oficina de Construção de Páginas Web

Oficina de Construção de Páginas Web COMPETÊNCIAS BÁSICAS EM TIC NAS EB1 Oficina de Construção de Páginas Web Criação e Publicação Actividades de exploração Objectivo Explorar as funcionalidades essenciais do Programa, na perspectiva da construção/actualização

Leia mais

Como Começar? Criação Páginas. Etapas. Apresentação INTERNET

Como Começar? Criação Páginas. Etapas. Apresentação INTERNET Como Começar? Criação Páginas Apresentação Etapas Como começar Para que um site tenha sucesso é necessário um correcto planeamento do mesmo. Todos os aspectos de desenho de um site devem ser pensados de

Leia mais