![]() |
|
||||
![]() Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Você está aqui: C++ Builder ::: VCL - Visual Component Library ::: TEdit |
Como retornar o conteúdo de um TEdit em tempo de execução usando a função SendMessage() da API do Windows e a mensagem WM_GETTEXTQuantidade de visualizações: 5898 vezes |
Embora o C++ Builder já nos forneça as ferramentas necessárias para obter o conteúdo de um TEdit em tempo de execução, é importante saber como realizar esta tarefa usando a API do Windows. Para isso, podemos usar a função SendMessage() em combinação com a mensagem WM_GETTEXT. A função SendMessage() da API do Windows possui a seguinte assinatura: LRESULT SendMessage( HWND hWnd, UINT Msg, ...... Note que precisamos de um HWND (parâmetro hWnd) para a caixa de texto. Temos que fornecer também a quantidade de caracteres que serão lidos (parâmetro wParam) e um buffer no qual os caracteres lidos a partir da caixa de texto serão colocados (parâmetro lParam). Veja: void __fastcall TForm3::Button2Click(TObject *Sender) { // buffer que receberá o conteúdo da caixa de texto char texto[255]; // caberá 254 caracteres // vamos obter o conteúdo usando a função SendMessage ...... Veja que neste exemplo eu usei o contrutor da classe AnsiString para converter uma string C terminada em null em uma string AnsiString que pode ser usada nos controles VCL. |
![]() |
C++ Builder ::: VCL - Visual Component Library ::: TEdit |
Como habilitar ou desabilitar um TEdit usando a função EnableWindow() da API do Windows usando C++ BuilderQuantidade de visualizações: 6088 vezes |
Embora o C++ Builder já nos forneça as ferramentas necessárias para habilitar ou desabilitar um TEdit em tempo de execução, é importante saber como realizar esta tarefa usando a API do Windows. Para isso, podemos usar a função EnableWindow() com os valores true ou false. A função EnableWindow() possui a seguinte assinatura: BOOL EnableWindow( HWND hWnd, ...... Note que precisamos informar o HWND (parâmetro hWnd) para a caixa de texto e um valor BOOL. Se fornecermos false, a caixa de texto será desabilitada. Veja: void __fastcall TForm3::Button2Click(TObject *Sender) { // vamos desabilitar o TEdit usando a função EnableWindow() // com o valor false ...... Para habilitar a caixa de texto novamente, só precisamos fornecer o valor true para o parâmetro bEnable: void __fastcall TForm3::Button2Click(TObject *Sender) { // vamos habilitar o TEdit usando a função EnableWindow() // com o valor true ...... É importante observar que o retorno da função EnableWindow será FALSE se tentarmos habilitar uma caixa de texto que já está habilitada ou tentarmos desabilitar uma caixa de texto que já está desabilitada. |
C++ Builder ::: VCL - Visual Component Library ::: TEdit |
Como obter o tamanho do texto de um TEdit usando a função SendMessage() da API do Windows e a mensagem WM_GETTEXTLENGTH usando C++ BuilderQuantidade de visualizações: 5976 vezes |
Embora o C++ Builder já nos forneça as ferramentas necessárias para obter a quantidade de caracteres contidos em um TEdit em tempo de execução, é importante saber como realizar esta tarefa usando a API do Windows. Para isso, podemos usar a função SendMessage() em combinação com a mensagem WM_GETTEXTLENGTH. A função SendMessage() da API do Windows possui a seguinte assinatura: LRESULT SendMessage( HWND hWnd, UINT Msg, ...... Note que precisamos informar o HWND (parâmetro hWnd) para a caixa de texto e a mensagem que será enviada ao controle. Os valores para os parâmetros wParam e lParam devem ser 0 (zero). Veja: void __fastcall TForm3::Button2Click(TObject *Sender) { // vamos obter o tamanho do texto de um TEdit usando a função // SendMessage() e a mensagem WM_GETTEXTLENGTH int tam = SendMessage(Edit1->Handle, WM_GETTEXTLENGTH, 0, 0); ...... Ao executar este exemplo você terá um mensagem com um texto parecido com: O Edit contém 10 caracteres. |
C++ Builder ::: VCL - Visual Component Library ::: TEdit |
Como definir o conteúdo de um TEdit em tempo de execução usando a função SendMessage() da API do Windows e a mensagem WM_SETTEXT usando C++ BuilderQuantidade de visualizações: 5899 vezes |
Embora o C++ Builder já nos forneça as ferramentas necessárias para definir o conteúdo de um TEdit em tempo de execução, é importante saber como realizar esta tarefa usando a API do Windows. Para isso, podemos usar a função SendMessage() em combinação com a mensagem WM_SETTEXT. A função SendMessage() da API do Windows possui a seguinte assinatura: LRESULT SendMessage( HWND hWnd, UINT Msg, ...... Note que precisamos de um HWND (Handle) para a caixa de texto. Feito isso só precisamos enviar a mensagem WM_SETTEXT juntamente com o conteúdo a ser exibido no controle. Veja: void __fastcall TForm3::Button2Click(TObject *Sender) { // conteúdo a ser definido para a caixa de texto char texto[] = "Veja isso"; ...... Veja que o parâmetro wParam da função SendMessage não é usado quando a mensagem é WM_SETTEXT. |
Veja mais Dicas e truques de C++ Builder |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |