Rozcestník: Jste tu poprvé? Pro začátečníky jsem napsal úvod do programování v Delphi. Můžete si přečíst informace ohledně změn v jednotlivých verzích Delphi a případně mezi jednotlivými edicemi Delphi. Pokud přecházíte ze starších verzí tak si všimněte mého pojednání řetezce a unicode.
Možná Vás bude zajímat spolupráce databáze a Delphi, nebo se budete rozhodovat mezi různými druhy Delphi projektů.
Uvažujete o vývoji pro mobilní zařízení? V tom případě navštivte sekci FireMonkey.

Pokud Vám nestačí náš přehled komponent, navštivte adresář nejpopulárnějších open source Delphi komponent

Free Delphi Starter Edition download

Potřebujete Delphi školení na různá témata?


Delphi a Windows Desktop App Converter

vložil Radek Červinka 21. prosince 2016 00:38

Integrace podpory Windows Desktop Bridge

Název Desktop Bridge je poměrně nový, dřív nesl tento projekt název Centennial. Jde o jeden z projektů MS, které měly přivést pod křídla UWP (Universal Windows Platform) aplikace z jiných ekosystémů. Původně existovaly tři zásadní projekty pro převod z Win32, Android a iOS ale v průběhu času byl projekt pro převod Android aplikací ukončen. Aktuálně jsou tedy k dispozici dva hlavní (dle mého soudu) nástroje pro převod aplikací z iOS (iOS Bridge) a Windows (Desktop Bridge). Doplňují je nástroje pro převod mobilních aplikací v Silverlight z Windows Mobile 8.1 (Mobilize.Net’s Silverlight Bridge) a pro převod webových aplikací (Hosted Web Apps). Pokud vás zajímají podrobnosti nahlédněte přímo na stránky MS: developer.microsoft.com/en-us/windows/bridges.

Nás pochopitelně zásadně zajímá Desktop Bridge a protože byl uvolněn pro veřejnost v rámci Windows 10 Anniversary Update v srpnu letošního roku, můžeme ho začít využívat hned teď.

Existují dvě možnosti, jak z klasické Win32 aplikace vyrobit APPX balíček:

  • Automatická konverze z instalačního balíčku (EXE nebo MSI)
  • Ruční konverze EXE souboru aplikace.

V prvním případě jde o nástroj DesktopAppConverter.exe. Používá se v případě, že máme k dispozici instalátor aplikace (EXE nebo MSI) a v podstatě nejprve vytvoří virtuální instanci Windows 10, ve kterých pak následně spustí instalátor. Průběh instalace a její výsledek zaznamená a vytvoří APPX, který obsahuje obraz výsledku instalace. Po nainstalování vytvořeného APPX má zapouzdřený EXE k dispozici vlastní kopii registrů a souborů vytvořených či změněných v rámci sledované instalace při konverzi. Vše je oddělené od okolí sandboxem, ve kterém pak výsledná aplikace běží.

Jestliže již používáte nějaký nástroj typu InstallAware nebo InstallShield pro vytvoření instalačního balíčku, můžete tento způsob zkusit, pokud poběží vše bez problémů je nejjednodušší a nejméně pracná cesta.

Více...


Nabízíme Delphi školení na různá témata, primárně ve Vaší firmě.

Tagy:

Novinky v Delphi | Praxe

RAD Studio Berlin 10.1 Update 2 Anniversary Edition

vložil Radek Červinka 15. listopadu 2016 20:21

Vyšel zásadní Update 2 pro Berlin. Hlavní novinkou je podpora Windows 10 Store Deployment s vytvářením APPX přímo z IDE a podporou posledních verzí operačních systémů.

Ale opět se ukazuje, že EMBT začalo výrazněji zase podporovat VCL, protože součástí jsou dvě nové VCL komponenty (TCalendarView a TCalendarPicker), které emulují Windows 10 kalendář i pro starší verze windows, což je ostatně již pravidlem (několik nových a složitých VCL komponent z posledních verzí jsou čisté VCL implementace moderních UI prvků běžících na rozumných windows). Komponenta je plně flexibilní a přizpůsobuje se vyhrazenému prostoru, kromě toho přechody mezi módy jsou animované, jak jsou uživatelé navyknutí z mobilních zařízení.

TCalendarViewTCalendarView

Více...


Nabízíme Delphi školení na různá témata, primárně ve Vaší firmě.

Tagy:

Aktualizace | Novinky v Delphi

VCL TRelativePanel

vložil Radek Červinka 13. června 2016 22:39

Nenápadnou, ale velmi zajímavou VCL komponentou přidanou v Delphi Seattle je TRelativePanel.

Tento panel umožňuje všem komponentám na něm umístěným specifikovat relativní polohu vůči panelu nebo vůči jiným komponentám, což je něco co ve VCL chybělo (pokud nepočítám Margins). Jakákoliv přidaná komponenta na tento panel dostane řadu property, které tak mohou specifikovat polohu vůči jiným objektům.

Relative Panel

Více...


Nabízíme Delphi školení na různá témata, primárně ve Vaší firmě.

Tagy: ,

Novinky v Delphi

Novinky v IDE Delphi 10 Seattle

vložil Radek Červinka 7. března 2016 23:42

Pro zajímavost několik drobností z Delphi 10 Seattle IDE co jsem minule vynechal.

Více...


Nabízíme Delphi školení na různá témata, primárně ve Vaší firmě.

Tagy:

Novinky v Delphi

Změny v RTL z CodeRage X

vložil Radek Červinka 20. října 2015 20:06

John Kaster publikoval svoji prezentaci z CodeRage X ohledně změn a vylepšení v RTL Delphi.

Pokud tedy nemáte prohlédnutou originální prezentaci, tak si aspoň prohlédněte powerpoint.

CodeRageX - RTL Deep Dive - John Kaster.pptx.

Změn je fakt hodně (veskrze pozitivních), o některých jsem už psal.

Více...


Nabízíme Delphi školení na různá témata, primárně ve Vaší firmě.

Tagy:

Novinky v Delphi

Firemonkey platform Control pro Windows v DX

vložil Radek Červinka 16. září 2015 22:11

Nenápadným rozšíření Firemonkey v DX Seattle je možnost u některých ovládacích prvků na Window ve Firemonkey použít ovládací prvky přímo z Windows.

Zatím se jedná o TEdit, TMemo a TPresentedScrollBox. Hlavní jsou ty první dva, protože to mimo jiné znamená např. podporu pro handikepované, Bidi atd. prostě to co umí normální TMemo a spol.

Více...


Nabízíme Delphi školení na různá témata, primárně ve Vaší firmě.

Tagy: ,

FireMonkey | Novinky v Delphi

Delphi 10 Seattle je nová verze Delphi

vložil Radek Červinka 31. srpna 2015 22:54

Následník Delphi XE8 je Delphi 10 Seattle aka DX Seattle.

Co je nového?

Více...


Nabízíme Delphi školení na různá témata, primárně ve Vaší firmě.

Tagy: ,

Novinky v Delphi

Firemonkey ImageList

vložil Radek Červinka 28. dubna 2015 22:21

V Delphi XE8 byl konečně přidán do knihovny FireMonkey TImageList. Ale na druhou stranu to není až tak obyčejný imagelist jako ve VCL.

Firemonkey Image List

Více...


Nabízíme Delphi školení na různá témata, primárně ve Vaší firmě.

Tagy: ,

Novinky v Delphi

System.Net.httpclient - THTTPClient z XE8

vložil Radek Červinka 19. dubna 2015 23:59

No minule jsem byl k THTTPClient trošku nespravedlivý, ve skutečnosti toho umí více než se zdálo. Kromě https bez nutnosti dodání OpenSSL pro různé platformy to má zajímavé možnosti ohledně paralelního zpracování. Ukáži na malém příkladu.

Ukáži nejprve příklad na zamyšlení a pak vysvětlím co to vlastně dělá. Více...


Nabízíme Delphi školení na různá témata, primárně ve Vaší firmě.

Tagy: , , , ,

Novinky v Delphi

MultiDevice Preview

vložil Radek Červinka 14. dubna 2015 22:14

Minule jsem označil MultiDevice Preview jako jednu z nejzásadnějších novinek v XE8 a věřím, že to programátorům pomůže.

V podstatě k tomu není co více říct, je to jednoduché jako facka. Použijete volbu z menu View - MultiDevice Preview a tam si vyberete které náhledy chcete používat (základní jsou předdefinovány).

Options

Více...


Nabízíme Delphi školení na různá témata, primárně ve Vaší firmě.

Tagy: , ,

Novinky v Delphi

Pár utržků kódu k XE8

vložil Radek Červinka 9. dubna 2015 22:29

Integrovaný HTTP(s) klient

Podle mne těžce inspirovaný .NET, https bez OpenSSL.

implementation
uses
  System.Net.httpclient,System.Net.URLClient;

{$R *.dfm}

procedure TForm7.Button1Click(Sender: TObject);
var
  o: THTTPClient;
  response: IHTTPResponse;
  r: TNameValuePair;
begin
  o := THTTPClient.Create;
  try
    response:=o.Get('https://www.google.com/');
    for r in response.Headers do
      memo1.Lines.Add(r.Name + '='+r.Value);
    Memo1.Lines.Add(response.ContentAsString);
  finally
    o.Free;
  end;
end;

No synapse to není, ale je to integrované v RTL a něco to umí. Více snad později.

Více...


Nabízíme Delphi školení na různá témata, primárně ve Vaší firmě.

Tagy: ,

Novinky v Delphi | Praxe

XE7 - IFuture druhé podání

vložil Radek Červinka 5. prosince 2014 00:59

Narazil jsem na pěkné vysvětlení IFuture s pěkným příkladem od Malcolma Grovese. Zásadní informace je, že IFuture není hodnota, kterou budete počítat v budoucnu, ale hodnota, kterou budete v budoucnu potřebovat. Tato jemná nuance je zásadní.

Krása použití paralelního programování v XE7 vynikne, až člověk změní myšlení. Přiznám se, že mi to trvá.

Více...


Nabízíme Delphi školení na různá témata, primárně ve Vaší firmě.

Tagy: ,

Novinky v Delphi

System.JSON v Delphi XE6 a XE7, pokračování

vložil Igor Gottwald 1. října 2014 22:22

Pokud náhodou někdo hledá rozumnou dokumentaci k JSON implementaci v Delphi XE6 nebo XE7, tak spláče nad výdělkem. Nicméně knihovna doznala velkých rozšíření a rád bych jich pár představil:

Základní princip vychází z dědění vlastností od nejjednoduššího typu TJSONAncestor, který je maximálně obecný (a většina jeho metod je abstraktních), přes TJSONValue (základní jednotka, se kterou lze pracovat) dále pak konkrétní typy (TJSONNull, TJSONTrue, TJSONFalse, TJSONString a TJSONNumber) po implementaci objektů TJSONObject a polí TJSONArray.

Více...


Nabízíme Delphi školení na různá témata, primárně ve Vaší firmě.

Tagy: , ,

Novinky v Delphi

XE7 - System.Threading - Task

vložil Radek Červinka 12. září 2014 23:32

V pokračování minulého článku ukáži pravděpodobně nejčastější použití System.Threading - použití TTask, přidání úlohy do poolu. Příklad jsem si vypůjčil z blogu Embarcadera.

implementation
uses
  System.Threading, System.SyncObjs;
{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
 tasks: array of ITask;
 value: Integer;
begin
 Setlength (tasks, 2);
 value := 0;

 tasks[0] := TTask.Create (procedure ()
   begin
     sleep (3000); // 3 seconds
     TInterlocked.Add (value, 3000);
   end);
 tasks[0].Start;

 tasks[1] := TTask.Create (procedure ()
   begin
     sleep (5000); // 5 seconds
     TInterlocked.Add (value, 5000);
   end);
 tasks[1].Start;

 TTask.WaitForAll(tasks);
// TTask.WaitForAny(tasks);
 ShowMessage ('All done: ' + value.ToString);
end;

Více...


Nabízíme Delphi školení na různá témata, primárně ve Vaší firmě.

Tagy: ,

Novinky v Delphi

XE7 - System.Threading - Future

vložil Radek Červinka 10. září 2014 00:39

XE7 přichází s novou jednotkou přímo v RTL a to System.Threading, která zjednodušuje paralelní programování. Jedná se o multiplatformní věc a mezi jinými umí ThreadPool, který podle zátěže přidává nebo odebírá další vlákna.

Více...


Nabízíme Delphi školení na různá témata, primárně ve Vaší firmě.

Tagy: , , ,

Novinky v Delphi

Naše nabídka

Partial English version.

MVP
Ing. Radek Červinka - Embarcadero MVP
profil na linkedin, Twitter:@delphicz

Nabízím placené poradenství a konzultace v oblasti programování a vývoje SW.
Dále nabízíme i vývoj speciálního software na zakázku.

Neváhejte nás kontaktovat (i ohledně reklamy nebo burzy práce).

Pokud chcete podpořit tento server libovolnou částkou, můžete použít PayPal. Moc děkuji.

Delphi Certified Developer

O Delphi.cz

Delphi je jediný moderní RAD nástroj podporující tvorbu nativních aplikací pro platformu Win32, Win64 , Mac OSX a na iPhone a Android (s výhledem na další platformy díky FireMonkey) na současném trhu (včetně Windows 8.1).

V současnosti je světová komunita přes dva miliónů vývojářů.

Delphi.cz je nezávislý portál pro uživatele Delphi. Portál není koncipován pro úplné začátečníky, i když i ti se zde nebudou nudit, ale spíše na programátory, kteří již něco znají a chtějí své znalosti dále rozvíjet a sledovat novinky.

Anketa

Poslední komentáře

Comment RSS