Náhodné výkřiky 18

vložil Radek Červinka 20. prosince 2011 23:45

Dnes to bude o různých komponentách, FireMonkey, hrách, překvapení od Allena Bauera a TForm.

Allen Bauer (aka ten kdo vládne vývoji Delphi) jen tak mimochodem utrousil něco v tomto smyslu:

Oh, and strings may become immutable and 0-based ;-)…

a následně

One and only one string type… The others are likely to be taken out
back and "eliminated."

Myslel tím unicode string. No já nevím - třeba si jen dělal srandu. Moc si to nedokáži představit (jako změnu stávajícího kódu).

zdroj

multitrackstudio

Chcete příklad reálné multiplatformní FireMonkey aplikace? MultitrackStudio je od verze 7 podle slov svého autora přepsaná do FireMonkey a dostupná pod Win32, Win64 a Mac OSX.

Update: tak podle všeho je zatím FMX jen pro OSX

multitrackstudio

TForm.CreateNew

Nedávno jsem potřeboval udělat jednoduchý formulář v runtime kódu. Něco jako:


  TProgressForm = class(TForm)
  private
    Pnl: TPanel;
  public
    procedure gInit;
    procedure gUpdate(const s:string);
  end;

{ TProgresssForm }

procedure TProgressForm.gInit;
begin
  Pnl:= TPanel.Create(Self);
  Pnl.Parent := Self;
  Pnl.Align := alClient;
  Pnl.Caption := '';
  Position := poMainFormCenter;
end;

procedure TProgressForm.gUpdate(const s: string);
begin
  Pnl.Caption := s;
  Pnl.Repaint;
end;

a volání:

  oProgressForm := TProgressForm.CreateNew(nil);
  try
    oProgressForm.gInit;
    oProgressForm.BorderStyle := bsNone;
    oProgressForm.Show;
    LoadData(oProgressForm.gUpdate);
  finally
    oProgressForm.Free;
  end;

Klíčové je oProgressForm := TProgressForm.CreateNew(nil);.

Protože pokud by byl klasicky použit TProgressForm.Create, VCL by při vytváření vyhodil chybu že nemůže najít resource pro TProgressForm. Použitím CreateNew to obejdete.

Pár komponent …

Aktualizované JCL a JVCL Binary instalace pro XE2 cc.embarcadero.com/Item/28636 a cc.embarcadero.com/Item/28637. Vhodné pro Starter Edition.

ksTools - malá knihovna, kromě jiného s base-2 fast Fourier Transform, record s multiple-precision integer aritmetikou a lepší timer

Když už jsem tu dnes ukazoval takový multimediální program, tak ještě New Audio Components for Delphi - přehrává audio v různých formátech (wav, Ogg Vorbis, FLAC, Monkey Audio, WavPack, MP3, Windows WMA, DTS, AC-3, AAC, AAC+)

A nakonec 2x javascript engine v Delphi: BESEN - ECMAScript v Object Pascalu (pozor na licenci) nebo Javascript engine pro Delphi na bázi spidermonkey (Delphi 2010 - protože RTTI).

… a odkazů

Hello World pro WinRT v Delphi, tj. pro Windows 8.

Asphyre Sphinx 2 - framework pro vývoj 2D/3D video her. Platformy: 32-bit Windows, 64-bit Windows, Mac OS a iOS za pomocí DirectX 7, DirectX 9, DirectX 9 Ex (Vista), DirectX 10, DirectX 10.1, DirectX 11 a/nebo OpenGL.

Fixing TCriticalSection - velmi zajímavý krátký text, o tom, jaký vliv má velikost instance TCriticalSection na výkon na vícejádrových procesorech a jak to řešit. Ve zkratce: díky malé velikosti se může stát, že několik instancí se dostane do stejné CPU cache line a tím vznikne problém s konflikty cache. A přitom stačí zvětšit velikost instance nad 96 byte a tím se zamezí aby se několik instancí vešlo naráz do cache a je pro problému. Stejným problémem trpěl TMonitor, ale to je v XE2 upraveno (zjišťuje se tam velikost CacheLine). No nikdy by mne to nenepadlo.

Tagy: , , ,

Komponenty

Komentáře

21.12.2011 10:38:41 #

Radim

Allen Bauer má pravdu. Nech je len jeden string.

Radim

21.12.2011 10:46:24 #

Radekc

Já jsem to myslel ohledně toho indexování od 0 (tj. 0-based)

Radekc

21.12.2011 11:29:53 #

PS

multitrackstudio: stiahol som Win 64bit., nainštaloval, preklikal a FMX nikde nenašiel :) ... alebo, žeby FM tak pokročil už?

PS

21.12.2011 11:51:26 #

Radekc

Pavol: já jsem stáhl OS X verzi, a díval jsem se do binárky a našel spoustu výskytů řetězce FMX. tak jsem myslel, že i Win verze jsou FMX, zvláště když autor napsal, že aktualizoval i Win verze.

Vycházel jsem i z konference, kde a) je velmi aktivním ohledně FMX, b) děkoval za FMX a 64bit po uvolnění MAC OSX verze.

Radekc

21.12.2011 11:59:14 #

Radekc

Už jsem to našel:

Giel Bremmers :

Kudos to the Delphi team for giving us 64 bit and OS X Delphi!
We released a 64 bit version over a month ago, and that went really well. The Mac version was released today, we hope that goes equally well.

ale asi fakt je zatím Win verze VCL.

Radekc

Přidat komentář





  • Komentář
  • Náhled
Loading



Naše nabídka

Nabízím placené poradenství a konzultace v oblasti programování a vývoje SW.
Dále nabízíme i vývoj 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 a Win64 (a Mac OSX, s výhledem na iPhone a Android díky FireMonkey) na současném trhu (včetně Windows 7).

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.

Burza delfínů nabízí pracovní možnosti pro programátory v Delphi.

Anketa

Poslední komentáře

Comment RSS