Pular para o conteúdo principal

InputMemo - InputQuery com memo

função para gerar um InputQuery, porém, ao invés de usar um TEdit, é usado um TMemo



function InputMemo(ACaption, ATexto: String; var AResult: String): Boolean;
var Form: TForm;
  Memo: TMemo;
  Label1: TLabel;
  ButtonOK, ButtonCancel: TButton;
  iWidth: Integer;
begin
  iWidth := 350;
  Form := TForm.Create(nil);
  Form.Height := 200;
  Form.Width := iWidth;
  Form.Position := poScreenCenter;
  Form.Caption := ACaption;

  Label1 := TLabel.Create(Form);
  Label1.Parent := Form;
  Label1.Top := 5;
  Label1.Left := 5;
  Label1.Width := Form.Width - 10;
  Label1.Caption := ATexto;

  Memo := TMemo.Create(Form);
  Memo.Parent := Form;
  Memo.Top := Label1.Top + Label1.Height + 5;
  Memo.Left := 5;
  Memo.width := Form.Width - 10;
  Memo.Height := Form.Height - Memo.Top - 45;

  iWidth := iWidth + 95;

  Form.Width := iWidth;
  ButtonOK := TButton.Create(Form);
  ButtonOK.Parent := Form;
  ButtonOK.Top := 5;
  ButtonOK.Left := iWidth - 20 - ButtonOK.Width;
  ButtonOK.Caption := 'OK';
  ButtonOK.ModalResult := mrOK;

  ButtonCancel := TButton.Create(Form);
  ButtonCancel.Parent := Form;
  ButtonCancel.Top := ButtonOK.Top + ButtonOK.Height + 5;
  ButtonCancel.Left := ButtonOK.Left;
  ButtonCancel.Caption := 'Cancelar';
  ButtonCancel.ModalResult := mrCancel;

  Result := Form.ShowModal = mrOK;

  if Result then
      AResult := Memo.Text;
  FreeAndNil(Memo);
  FreeAndNil(Label1);
  FreeAndNil(Form);

end;


exemplo de uso

procedure ...
var sTexto: String;
begin
  sTexto := '';
  InputMemo('Teste de Memo','Digite o texto', sTexto);
  ShowMessage('Texto digitado: '+ sTexto);

end;

Comentários

Postar um comentário

Postagens mais visitadas deste blog

ACBR - Corrigir Erro Interno: 12175/12030/12029/12031

Erro Interno: 12175/12030/12029/12031 Atualização do Windows - Habilitar o TSL 1.2 ✔1.0) Instalar o Service Pack 1 (SP1) - Baixar em  https://www.microsoft.com/pt-BR/download/details.aspx?id=5842 ✔1.1) Responsável por atualização dos protocolos de SSL - Instalar KB2992611, https://www.catalog.update.microsoft.com/Search.aspx?q=2992611 ✔1.2) Responsável por HABILITAR o protocolo TLS 1.1 e 1.2. Instalar KB3140245  https://www.catalog.update.microsoft.com/search.aspx?q=kb3140245 ✔1.3) ou Baixar todas as atualizações disponíveis. Configuração do Protocolo no Internet Explorer Marque as opções Opções de Internet (no IE, menu Ferramentas, Opções de Internet) ✔ Não salvar páginas criptografadas em disco;  ✔ Usar SSL 3.0;   ✔ Usar TLS 1.0;   ✔ Usar TLS 1.2;  Desmarque as opções caso tenha ou estejam marcadas: ❌ Usar SSL 2.0;  ❌ Usar TLS 1.1; #Atualizações das Cadeias de Certificado ✔ https://www.gov.br/iti/pt-br/assuntos/navegadores Certificados por ...

Curso Fast Report - Aula 03 - Agrupamento de Dados e Totalizadores

Olá pessoal, estamos aqui mais uma vez com nosso curso de Fast Report. Hoje iremos ver como fazer o agrupamento dos dados, e fazer totalizadores, tanto por grupo como um totalizador geral. Vamos lá. Adicione uma nova query e outro frxDBDataSet ao form, e configure-os assim: Query Name : sqlReceber SQL : SELECT nome, numero, vencimento, valor, historico FROM receber ORDER BY vencimento frxDBDataSet Name : frxSqlReceber (nome usado pra referencias no Delphi) UserName : frxSqlReceber (nome usado pra referencias no FastReport) DataSet : sqlReceber Dê dois cliques no frxReport pra abrir o designer. Clique no botão Novo, vá ao menu Relatório, opção Dados e marque o frxSqlReceber. 2 cliques no MasterData e selecionar a fonte dos dados novamente. Remova a banda PageTitle e adicione a banda PageHeader . Adicione a banda GroupHeader e informe o field que será usado como agrupador. As opções dessa tela são: Manter grupo unido : não separa o cabeçal...

Curso Fast Report - Aula 02 - Primeiros Passos

Olá galera, mais uma mini-aula de FastReport saindo do forno. Desta vez iremos ver como gerar nosso primeiro relatório no FR. Mãos a obra (ou melhor, no mouse e teclado hehehe). Nesta aula, estou usando um projeto novo, mais vocês podem usar o projeto de vocês. O que vamos precisar: 1 Conexao com banco de dados. Eu estou usando UniDAC - TUniConnection + MySQL, mas vc pode pode usar qualquer componente de conexão e qualquer banco de dados) 1 Componente Query compatível com sua conexão (vou usar um comando SQL simples: SELECT id_cliente, nome, endereco, numero FROM clientes ORDER BY nome) 1 Componente frxReport 1 Componente frxDBDataset - aponte a propriedade DataSet para a query que você está usando