getmouseclick(kind, x,y)

Anuncio
getmouseclick(kind, x,y);
Regresa las coordenadas (x,y) donde
ocurrio el evento descrito en kind
Los eventos pueden ser
Evento
Descripción
WM_MOUSEMOVE
El ratón se movió
WM_LBUTTONDBLCLK
Doble click del botón izquierdo
WM_LBUTTONDOWN
Click del botón izquierdo
WM_LBUTTONUP
Dejo de presionar el botón izquierdo
WM_RBUTTONDBLCLK
Doble click del botón derecho
WM_RBUTTONDOWN
Click del botón derecho
WM_RBUTTONUP
Dejo de presionar el botón derecho
ismouseclick(kind)
Esta función regresa un 1 se el evento
de tipo kind se efectuo de otra forma
regresa 0.
La función getmouseclick les da el valor
de x = y = -1 en caso de que el evento
no haya tenido lugar.
settextstyle(font, direction, size);
Impone el estilo de texto.
El tipo de caracteres se puede escoger
de la siguiente tabla FONT
VALOR
DEFAULT_FONT
0
TRIPLEX_FONT
1
SMALL_FONT
2
SANS_SERIF_FONT
3
GOTHIC_FONT
4
SCRIPT_FONT
5
SIMPLEX_FONT
6
TRIPLEX_SCR_FONT
7
COMPLEX_FONT
8
EUROPEAN_FONT
9
BOLD_FONT
10
settextstyle(font, direction, size);
La dirección puede ser:
Dirección
Valor
HORIZ_DIR
0
VERT_DIR
1
El tamaño define las veces que
multiplicara el tamaño.
outtextxy(x,y,string)
Esta función escribe la cadena string en
iniciando en las coordenadas (x,y)
outtext(string)
Escribre la cadena string en la posición
actual
setfillstyle(int trama, int color);
Define el estilo de relleno con una trama
que puede tomar los siguientes valores
Rellenos
VALOR
EMPTY_FILL
0
SOLID_FILL
1
LINE_FILL
2
LTSLASH_FILL
3
SLASH_FILL
4
BKSLASH_FILL
5
LTBKSLASH_FILL
6
HATCH_FILL
7
XHATCH_FILL
8
INTERLEAVE_FILL,
9
WIDE_DOT_FILL
10
CLOSE_DOT_FILL
11
USER_FILL
12
Ejemplo
int main(void)
{
int x, y, style = 1;
// Coordinates of the mouse click
// Put the machine into graphics mode:
initwindow(450, 300);
while (!ismouseclick(WM_RBUTTONDOWN))
{
delay(500);
setfillstyle(style,WHITE);
getmouseclick(WM_LBUTTONDOWN, x, y);
if(x!=-1) bar(x,y,x+20,y+20);
if(style < 11) style ++;
else style = 1;
}
closegraph( );
system("pause");
return 0;
}
Ejemplo
int main(void)
{
int maxx, maxy;
int x, y;
int divisor;
// Maximum x and y pixel coordinates
// Coordinates of the mouse click
// Divisor for the length of a triangle side
initwindow(450, 300);
maxx = getmaxx( );
maxy = getmaxy( );
// Draw a white circle with red inside and a radius of 50 pixels:
setfillstyle(SOLID_FILL, RED);
setcolor(WHITE);
fillellipse(maxx/2, maxy/2, 50, 50);
// Print a message and wait for a red pixel to be double clicked:
settextstyle(DEFAULT_FONT, HORIZ_DIR, 2);
outtextxy(20, 20, "Left click in to end.");
setcolor(BLUE);
divisor = 2;
Ejemplo
while (!ismouseclick(WM_LBUTTONDOWN))
{
circle(maxx/divisor, maxy/divisor,20);
delay(500);
divisor++;
}
getmouseclick(WM_LBUTTONDOWN, x, y);
printf( "The mouse was clicked at: x = %d, y = %d\n\n",x,y);
closegraph( );
system("pause");
return 0;
}
Descargar