Incorporado intellisense al editor

He dotado al editor de código con intellisense. Esta funcionalidad resulta muy útil a la hora de escribir código ya que aumenta considerablemente la productividad del desarrollador. No es demasiado compleja de implementar. Hoy en día la inmensa mayoría de entornos de desarrollo incorporan esta característica.

El Intellisense se activa al presionar la combinación de teclas + J, con lo que se mostrará una lista con todas las palabras, posicionándose el foco en aquella palabra que encaje con lo que hay escrito en el editor o en la primera de ellas si hubiera varias que encajaran. Se podrá seleccionar mediante los cursores la palabra deseada y al pulsar la barra espaciadora o la tecla ENTER se escribirá dicha palabra en el editor, desapareciendo la lista de palabras. Si pulsáramos la tecla ESC una vez se esta mostrando la lista de palabras, esta desaparecería.

Actualmente la lista de palabras únicamente muestra las palabras del lenguaje, pero no muestra variables o constantes que se hayan declarado previamente en el código. Cuando finalice la implantación de los analizadores incluirá las variables y las constantes en la lista.


Intellisense."
Intellisense.


5 Responses to “Incorporado intellisense al editor”

  1. elpibedealabama Says:

    estaría guay que le pusieras el borde del recuadro intellisense resaltado en vez de hundido. como en el vstudio, que queda como que más natural

  2. brausoft Says:

    No me había fijado, pero tienes razón, en el VS se muestra hacía fuera. He intentado ponerlo igual pero el control listview del framework 2.0 que es el que estoy utilizando no permite poner el borde hacia fuera. Me suena que había algún control que lo permitía, pero no lo he encontrado, ni siquiera el panel.

  3. elpibe Says:

    no se puede? y si quitas el borde y lo pones sobre un panel?
    también te puedes inventar una forma nueva de ponerlo, no se… sin borde y de fondo azul claro?…

  4. brausoft Says:

    El panel tampoco se puede poner que sobresalga (o no he encontrado la propiedad adecuada) lo cual me parece algo extraño.
    El caso es que me suena de haber visto en algún lado un control que se pueda poner que sobresalga, pero lo mimo era en el VB6.0

  5. elpibedealabama Says:

    pues es verdad, así que tienes 2 soluciones:
    1. la cutre: lo pones sobre un botón bloqueado
    2. Innova quitando el borde del listbox y dando un color muy suave de fondo.
    3. las dibujas tu mismoen el evento on paint. es fácil, aquí te pongo el código:

    Pen p=new Pen(Color.White,2);

    this.graphicsContext.DrawLine(p,this.w_Bounds.X,this.w_Bounds.Y,this.w_Bounds.X+this.w_Bounds.Width-1,this.w_Bounds.Y);
    this.graphicsContext.DrawLine(p,this.w_Bounds.X,this.w_Bounds.Y,this.w_Bounds.X,this.w_Bounds.Y+this.w_Bounds.Height-1);

    p.Width=1;
    p.Color=Color.Black;

    this.graphicsContext.DrawLine(p,this.w_Bounds.X,this.w_Bounds.Y+this.w_Bounds.Height-1,this.w_Bounds.X+this.w_Bounds.Width-1,this.w_Bounds.Y+this.w_Bounds.Height-1);
    this.graphicsContext.DrawLine(p,this.w_Bounds.X+this.w_Bounds.Width-1,this.w_Bounds.Y,this.w_Bounds.X+this.w_Bounds.Width-1,this.w_Bounds.Y+this.w_Bounds.Height-1);

    p.Color=SystemColors.ControlDark;

    this.graphicsContext.DrawLine(p,this.w_Bounds.X+this.w_Bounds.Width-2,this.w_Bounds.Y+1,this.w_Bounds.X+this.w_Bounds.Width-2,this.w_Bounds.Y+this.w_Bounds.Height-2);
    this.graphicsContext.DrawLine(p,this.w_Bounds.X+1,this.w_Bounds.Y+this.w_Bounds.Height-2,this.w_Bounds.X+this.w_Bounds.Width-2,this.w_Bounds.Y+this.w_Bounds.Height-2);

Leave a Reply

Antispam. Escriba la palabra 'hola' (sin comillas)