Ver Mensaje Individual
  #2  
Antiguo 17-04-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola danielmj.

Aunque existen formas mas sofisticadas de búsqueda para un TRichEdit, usando FindDialog y FindText por ejemplo, creo que este modo se va a acomodar de forma simple al TComboBox de tu caso.

Fijate si te puede servir:
Código Delphi [-]
const
  EM_SCROLLCARET = $00B7;

var
  LastCase: Integer;

// Buscar primero
procedure TForm1.btnSearchClick(Sender: TObject);
begin
  with RichEdit1 do
  begin
    LastCase:= Pos(Lista.Text, Text);
    if LastCase <> 0 then
    begin
      SelStart:= Perform(EM_LINEINDEX, 0, 0) + LastCase-1;
      SelLength:= Length(Lista.Text);
      Perform(EM_SCROLLCARET, 0, 0);
      SetFocus
    end
    else MessageBox(0,PChar('No se encontró ' + Lista.Text), '', MB_OK);
  end;
end;

// Buscar siguientes
procedure TForm1.btnNextClick(Sender: TObject);
var
  Next: Integer;
begin
  with RichEdit1 do
  begin
    Next:= PosEx(Lista.Text, Text, LastCase+1);
    if Next <> 0 then
    begin
      SelStart:= Perform(EM_LINEINDEX, Next, 0) + Next ;
      SelLength:= Length(Lista.Text);
      Perform(EM_SCROLLCARET, 0, 0);
      LastCase:= Next;
    end;
    SetFocus;
  end;
end;

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita