Pregunta

Por el momento tengo el siguiente hack:

procedure TForm1.HTMLViewer1KeyDown(Sender: TObject; var Key: Word;
    Shift: TShiftState);
begin
    if (Key = Word('C')) and (Shift = [ssCtrl]) then
        HTMLViewer1.CopyToClipboard;
end;

¿Existe una forma más sensata/mantenible de permitir la copia de un HTMLViewer? Espero que haya una propiedad que pueda establecer, o algo así, porque tener que hacer lo anterior parece estúpido. Los descendientes de TCustomedit tienen copia, pegado y selección de todo por defecto, pero HTMLViewer por alguna razón no parece implementarse de esta manera.

Otro problema es que el método anterior tampoco tiene en cuenta el clic derecho y la selección de "copia"

Editar: al final elegí reemplazar el código anterior con un menú contextual adecuado, según este tutorial: http://delphi.about.com/od/tmemotrichedit/a/richedit-popup.htm

¿Fue útil?

Solución

Puede hacer algo cuando el usuario presione Ctrl-C (es decir, use su propia solución #1)

procedure TForm1.HTMLViewer1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  if (Key = Word('C')) and (Shift = [ssCtrl]) then
    HTMLViewer1.CopyToClipboard;
end;

O puede implementar un menú emergente como se describe aquí (es decir, su propia solución #2)

Agregue un menú de contexto estándar (emergente) al Trichedit de Delphi

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top