Tecnologia além do código.
Régys Borges da Silveira
← Voltar para explorar os artigos

Lançamento do RAD Studio, Delphi e C++ 10.3 Rio

Chegou a nova versão do RAD Studio, Delphi e C++ a 10.3, também chamada de Rio pelos íntimos, essa versão veio com diversas melhorias na IDE e muitas novidades na linguagem e é claro como não poderia deixar de ser vários bugs reportados pela comunidade corrigidos, cada vez mais estável, cada vez melhor.

Também fora feitas diversas melhorias no mobile, alem do suporte a API level 26 e também suporte avançado a VCL para High DPI displays, Per Monitor V2 support, novos recursos do Windows 10 e WinRT APIs.

Para ver mais sobre as melhorias clique aqui.

Capa do livro FireDAC na PráticaCapa do livro SDD em DelphiCapa do livro Delphi Vivo

Continue aprendendo com os livros

Conheça os temas, leia as apresentações e explore as degustações disponíveis no catálogo.

Explorar os livros →
Compartilhar por e-mail

13 comentário(s)

  1. Principais erros encontrados no Delphi 10.3 que estão inviabilizando o uso, que por sinal está com um visual dark lindo:

    1) Transição entre uma TabItem e outra usando o TChangeTabAction, ou seja, seleciono uma opção e faço a transição para uma nova TabItem (Tela) e depois executo um processo mais demorado e a transição não é feita, só depois que acaba todo o processo. Obs.: Só no Android.
    2) Application.ProcessMessages não está funcionando. Obs.: Só no Android.
    3) TLocationSensor está sem executar o evento LocationChanged, ou seja, não consigo obter a localização. Obs. Somente iOS.

    Obs: Fiz alguns passos da Embarcadero Releases Notes para Android e mesmo assim nada, testei na API 26 e na API 28 do Android.

    São pequenos grandes erros que estão acontecendo comigo e que já pesquisei na internet e vi só umas duas pessoas reclamarem e sem sucesso.

    Estou testando a versão demonstração da Embarcadero, uso o MacBook Pro 15’ 2017 com 16G, 1 TB SSD com macOS Mojave e maquina virtual Parallels v. 14.1.0.

    Abraços!

      1. Régys já existe a RSP-22888, gostaria apenas de saber se tem algum paliativo para o caso.

        Obrigado!

      2. Em testes que realizei, tive que dividir o processamento thread principal para GUI e uma thread pro processamento das infos, lembrando que cada alteração na tela (como o processmessages) obrigatoriamente tem se a necessidade de sincronizar a thread avulsa com a principal.
        Achei muito custoso o trabalho, mas igual o Regys Falou pode ser que esteja resolvido no Update 1.
        É sempre bom dar uma aguardada para resolução dos bugs antes do investimento em R$ e migração de algum projeto maior, evita muita dor de cabeça.

      3. Mas então, no mobile tudo deve ser assincrono, usando threads, task, future o que for mais simples para você, não se deveria de forma alguma processar algo diretamente, por isso não vejo muito o uso do processmessages, mas pelo que está no QA, eles fizeram algo já para o update 1.

    1. Boa tarde Davis Lima, também estou testando a versão gratuita, e estou com a mesma dificuldade que você em relação ao ProcessMessages, testei com aplicações simples, como por exemplo exibir um retângulo e logo apos um sleep, o processmessages não tem efeito algum.
      Vc conseguiu alguma solução ?

      1. Fernando Rizzato da Embarcadero pediu para deixar o seguinte comentário:

        A partir do 10.3 as threads do FMX UI e Java UI foram unificadas, permitindo o suporte a controles nativos e ao também ao Z-Order. Com isso, algumas estruturas de programação que são típicas do mundo Windows deixaram de ser suportadas em sua totalidade no Android, e algumas adaptações de código são necessárias.

        1) A transição deve ser feita de modo assíncrono, dando a oportunidade da animação ser executada em paralelo a transição: http://docwiki.embarcadero.com/Libraries/Rio/en/FMX.TabControl.TTabControl.SetActiveTabWithTransitionAsync. As actions também foram atualizadas para utilizar o novo modelo.

        2) O processmessages não produz efeito algum no Android. Para atualizar a interface, utilizar a sincronização de threads. Por exemplo, considere este código:

        FThread := TThread.CreateAnonymousThread(procedure begin
          TThread.Synchronize(nil, procedure begin
              Button1.Enabled := False;
              Button1.Text := 'Enviando...';
          end);
          Sleep(3000):
          TThread.Synchronize(nil, procedure begin
            Button1.Text := 'Update';
            Button1.Enabled := True;
          end);
        end);
        FThread.Start;
        

        3) Está ajustado no 10.3.1, mas existe um workaround aqui que pode ser aplicado no 10.3:
        https://quality.embarcadero.com/browse/RSP-21834

    1. Bom, não sei se era um problema eu sempre usei scroll para controlar isso e nunca ficou por cima, agora os controles estão utilizando desenho nativo, o que significa mais integração com o sistema operacional do device, muita coisa que antes não funcionava agora vai funcionar como por exemplo sugestão de texto, entre outros.

Dê-nos sua opinião, seu comentário ajuda o site a crescer e melhorar a qualidade dos artigos.

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.

Um próximo passo para cada interesse.

Continue estudando com os livros, acompanhe as videoaulas ou consulte as soluções para o seu projeto.

Descubra mais sobre Régys Borges da Silveira

Assine agora mesmo para continuar lendo e ter acesso ao arquivo completo.

Continuar lendo