Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-12-2005
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.144
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Héctor, has hecho que escribiera esta cosa:

Código Delphi [-]
{*******************************************************}
{                                                       }
{  TEdit(Ex) - TEdit en que no puede "pegarse" texto    }
{                                                       }
{  Copyright  (c)  2005  David Esperalta Calderón       }
{                                                       }
{                                                       }
{  Uso: Sitúa esta unidad en la cláusula uses del       }
{       formulario en que hagas  uso de "TEdit's"       }
{       en los que no quieras que pueda "pegarse"       }
{       texto desde el portapapeles de Windows.         }
{                                                       }
{       Has de tener en cuenta de hacerlo antes de      }
{       la unidad "StdCtrls.pas", que  es en donde      }
{       se implementa el componente "TEdit".            }
{                                                       }
{                                                       }
{  Gracias Héctor Randolph por la idea. ;-)             }
{                                                       }
{                                                       }
{  GNU-GPL license - You can use this software under    }
{  the terms of the General Public License (gnu.org)    }
{                                                       }
{*******************************************************}

unit UEditEx;

interface

uses
  StdCtrls, Messages;

type
  TEdit = class(StdCtrls.TEdit)
  private
    procedure WMPaste(var Message: TMessage); message WM_PASTE;
    procedure WMRButtonDown(var Message: TMessage); message WM_RBUTTONDOWN;
  end;

implementation

{ TEdit(Ex) }

procedure TEdit.WMPaste(var Message: TMessage);
begin
end;

procedure TEdit.WMRButtonDown(var Message: TMessage);
begin
end;

end.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #2  
Antiguo 02-12-2005
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.144
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

O esto otro, vamos:

Código Delphi [-]
{ *********************************************************************** }
{                                                                         }
{ DecComp - Unos sencillos componentes                                    }
{                                                                         }
{ Créditos:                                                               }
{                                                                         }
{ ¡Gracias a Héctor Randolph (1) por la idea!                             }
{                                                                         }
{ (1) www.clubdelphi.com                                                  }
{                                                                         }
{ Copyright (c) 2005 dec - [email protected]                       }
{ bajo la licencia GNU GPL >> ver en "licencia.txt"                       }
{                                                                         }
{ *********************************************************************** }

unit UNoPastEdit;

interface

uses
  Classes,StdCtrls,Messages;

type
  TNoPastEdit = class(TEdit)
  private
    procedure WMPaste(var Message: TMessage); message WM_PASTE;
    procedure WMRButtonDown(var Message: TMessage); message WM_RBUTTONDOWN;
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('DecComp', [TNoPastEdit]);
end;

{ TNoPastEdit }

procedure TNoPastEdit.WMPaste(var Message: TMessage);
begin
end;

procedure TNoPastEdit.WMRButtonDown(var Message: TMessage);
begin
end;

end.
__________________
David Esperalta
www.decsoftutils.com

Última edición por dec fecha: 02-12-2005 a las 06:55:43. Razón: Corrección del código fuente.
Responder Con Cita
  #3  
Antiguo 02-12-2005
Delfino Delfino is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 974
Poder: 24
Delfino Va por buen camino
Si tienes la JVCL , su componente JvEdit tiene la propiedad ClipboardCommands q te permite activar o desactivar todas estas ocpiones..
__________________
¿Microsoft? No, gracias..
Responder Con Cita
  #4  
Antiguo 02-12-2005
Avatar de Héctor Randolph
[Héctor Randolph] Héctor Randolph is offline
Miembro Premium
 
Registrado: dic 2004
Posts: 882
Poder: 22
Héctor Randolph Va por buen camino
Cita:
Empezado por dec
Gracias Héctor Randolph por la idea.
Hola David

No hay nada que agradecer, tú sabes, para eso estamos aquí.


Tengo una sugerencia para tu componente, a ver que te parece.

Código Delphi [-]
type
  TPortapapeles=(cbAllowCut,cbAllowPaste,cbAllowCopy);
  TClipboardOptions=set of TPortapapeles;

  TNoPastEdit = class(TEdit)
  private
    FClipboardOptions: TClipBoardOptions;
  published
    property ClipboardOptions: TClipBoardOptions read  FClipBoardOptions
                                                 write FClipBoardOptions;
  private
    procedure WMPaste(var Message: TMessage); message WM_PASTE;
  end;

implementation

{ TNoPasteEdit }

procedure TNoPastEdit.WMPaste(var Message: TMessage);
begin
  if not (cbAllowPaste in FClipboardOptions) then Exit;
  inherited;
end;

Se puede hacer lo mismo con las opciones copiar y cortar.

Un saludo.
Responder Con Cita
  #5  
Antiguo 02-12-2005
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.144
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Estupeno Héctor, acabo de actualizar el componente, el cual incluí en DecComp. ¡Muchas gracias!
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #6  
Antiguo 02-12-2005
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.144
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,


Cita:
Empezado por Héctor
Se puede hacer lo mismo con las opciones copiar y cortar.
Hum... por hoy lo voy a dejar así, puesto que no he dormido, llevo unas horas liado con cierto tema para WordPress y... en fin, qué te voy a contar,... pero, ya veremos, que dijo un ciego. ¿Pero a qué te refieres, exactamente? ¿Habría que aprovechar otros mensajes o qué? Mira que estoy espesito, como suele decirse...
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #7  
Antiguo 02-12-2005
Avatar de Héctor Randolph
[Héctor Randolph] Héctor Randolph is offline
Miembro Premium
 
Registrado: dic 2004
Posts: 882
Poder: 22
Héctor Randolph Va por buen camino
Cita:
Empezado por dec
Hum... por hoy lo voy a dejar así, puesto que no he dormido
Amigo, estamos en iguales condiciones, de este lado del planeta son aproximadamente las 03:15 am y llevo dos noches de desvelos.

Cita:
Empezado por dec
¿Pero a qué te refieres, exactamente? ¿Habría que aprovechar otros mensajes o qué?
Solamente me refería a que se puede evitar copiar capturando el mensaje WM_COPY y evitar cortar con el mensaje WM_CUT; de la misma manera que se capturó el mensaje WM_PASTE.

Pero, esa es otra historia.

Un saludo.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 01:35:09.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi