Delphi XE5 正式發表-支援Android、iOS、Mac、Win的開發利器

其實壽山我自從Delphi 7之後,就很少follow Delphi的相關訊息。主要是後面的產品不是這麼的令人驚艷!

不過在FireMonkey這個框架出現後,就開始注意到Delphi這個開發工具的雄心壯志~毅然拋棄了多年且相當成熟的VCL,改投注在跨平台、跨裝置的FireMonkey上,就知道這開發工具準備大展身手了!

Click to see full-sized image

果然從XE2開始,FireMonkey就不斷進化~除了有64位元的程式外,也可以開發在Mac OS、iOS上面跑的程式…

到了XE4時,iOS開發已經相當純熟,也有不少軟體公司開始使用XE4開發app且成功上架~昨天XE5正式release 後,也看到Embarcadero依照著預定的roadmap,將delphi支援Android開發給呈現出來。

專案直接支援android、iOS Platforms

螢幕快照 2013-09-13 上午11.08.45

 

iOS、Android User Permissions直接以勾選方式

螢幕快照 2013-09-13 上午11.11.30

設計介面的外觀還可以讓您選是那個機器(或是螢幕大小)

螢幕快照 2013-09-13 上午11.08.58

雖然昨天台中場在李維大師的解說下,可以看得出仍有一些小小的bug在,不過整體而言可以看得出Delphi XE5已經很成功的開發出mobile的solution。

接下來有空的時間,也得好好摸索它,也希望有機會介紹給大家 :)

[Delphi] DBGrid顯示不同字型、顏色

dbgrid選擇顏色字型的方式
1.在DBGrid的Columns Editor中,將要出現按鈕的欄位的ButtonStyle設為cbsEllipsis
2.接著到OnEditButtonClick中增加程式判斷
if dbgrid1.SelectedField = xxxx(欄位名稱) then begin
end;
3.顯示的方式則是在OnDrawColumnCell中增加程式
IF COLUMN.FieldName = ‘xxxx(欄位名稱)’ THEN BEGIN
DBGrid1.canvas.brush.Color := STRINGTOCOLOR(‘clGreen’);
END;
// 記得要加上
DbGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, []);

[Delphi] 餐廳、飲料、簡餐等餐飲業POS系統畫面實踐

posscreen

在餐廳、飲料、簡餐等餐飲業的pos系統,常常可以如上圖的畫面。在Delphi如何實踐呢?提出幾個重點:

1.取得.ClientWidth、ClientHeight

2.如果是Scrollbox這類會出現捲軸的元件,記得再透過GetSystemMetrics(SM_CXVSCROLL)、GetSystemMetrics(SM_CYHSCROLL)取得捲軸的寬度、高度,扣除掉才能取得正確可佈置的寬、高

3.透過Ceil記算頁數

4.Create元件時記得設定Parent

5.清空元件利用

while xxx.ControlCount > 0 do begin
xxx.Controls[0].Free;
end;

 

Apple Developer Center System Status

 

自從7/18 蘋果無預警關閉開發者網站後,隨後發佈網站被DDOS攻擊後,似乎是相當嚴重。

可以從 System Status網頁(https://developer.apple.com/support/system-status)看到服務狀態,目前祇有iTunes Connect及Bug Reporter是Online,其他都是OffLine。不知道什麼時候才會維修好!

systemstatus

淺淡POS歷史

POS系統已邁向第五代了!至於前四代是什麼呢?也稍微瞭解一下,

第一代:電子收銀系統(Electronic Cash Register;ECR),錢箱加上按鈕,做簡單的運算、開立發票。
第二代:電子收銀系統(ECR) 同一代機功能,增加了網路RS232功能,可做簡單分析及統計報表
第三代:端點銷售系統(POS),開始採用 PC架構,不過是分離式主機與螢幕、週邊
第四代:端點銷售系統(Touch POS) 類似第三代,不過整合成一體,並針對防震、防水及耐用等功能有更大的要求。
第五代:無人櫃檯(Kiosk) 無線、無人櫃檯、無人商店

【Delphi XE4】常用的Hot key

畫面

  • F12 切換程式碼編輯及表單設計

程式碼縮排

  • 內縮(向右) Ctrl + Shift + I
  • 外張(向左) Ctrl + Shift + U
  • 自動編排   Ctrl + D

書籤 bookmark

  • Ctrl + Shift + 0-9(數字)  註:0與1可以用Ctrl + K + 0、1代替

Sync Edit Mode

  • Ctrl + Shift + J

Refactor

  • Ctrl + Shift + M

To-Do List

  • Ctrl + Shift + T

Remark 註解

  • Ctrl + /

Class Completion 類別完成

  • Ctrl + Shift + C

Declare Field 變數宣告

  • Ctrl + Shift + D

參數提示

  • Ctrl + Shift + Space

Code Templates

  • Ctrl + J

強大的jQuery圖表套件- HighCharts

脈博網後台看到很漂亮的圖表,原來是使用 HighCharts這個元件。提供了幾乎所有常用的圖表類型:長條圖圓餅圖、折線圖、散佈圖等….,每種圖表還可以額外的定義,可以輕鬆的打造出專屬的圖表。

記得使用時要搭配 jQuery。

HighCharts
網站:http://www.highcharts.com

範例:http://www.highcharts.com/demo

Highcharts - Interactive JavaScript charts for your webpage

Delphi-將POS系統的Interbase匯到MySQL資料庫

前一陣子研究各家的餐飲、簡餐POS系統,意外的發現不少系統都是用Delphi寫的,資料庫也大多使用Interbase或是Firebird。

為了方便研究,就嘗試將資料庫轉到MySQL上去~記錄一下轉移方式。

工具:

做法:

在MySQL建立空白資料庫(utf8)

4

 

資料來源 (ODBC)新增 MySQL ODBC 3.51 Driver,注意一點要記得打開Details,將 Character Set 選成 Big5(不是utf8喔)

5

SQL Explorer→New Database→Database Driver Name選INTRBASE,SERVER NAME選擇您要連結的GDB檔案

8

6

7

打開Datapump,Source Alias選擇在SQL Explorer建立的名稱,User Name是SYSDBA(注意大小寫),password是 masterkey(注意大小寫)。接著Target Alias選擇MySQL ODBC建立的名稱。

11

10

9

12

13

 

 

 

14