今天中午看到蘋果日報上斗大的標題「彭淮南示警:泡沫來襲」,想到了2007年左右這首諷刺網路泡沫來臨的歌曲。聽過這首歌的朋友,應該都知道Web2.0的那一段事吧….
同場加映
大型網站架構..net 架構師.rabbitMQ.redis.行動開發.APP開發教學.PHP Laravel開發..net core C# 開發.架構師之路.Delphi開發.資料庫程式.進銷存.餐飲POS系統
今天中午看到蘋果日報上斗大的標題「彭淮南示警:泡沫來襲」,想到了2007年左右這首諷刺網路泡沫來臨的歌曲。聽過這首歌的朋友,應該都知道Web2.0的那一段事吧….
同場加映
Hacker News上出現了一則訊息,Google的瑞士工程師Gabriel Gambetta 只用了30行JavaScript程式就寫了一個功能完整的光線跟踪程式。
延伸閱讀
Notepad++是壽山最常拿來編輯PHP、HTML、CSS、JavaScript的文字編輯器。
這套軟體也算是台灣之光,是由台灣人侯今吾基於Scintilla編輯元件所撰寫出來的!在功能上可以取代系統內附較陽春的記事本(Notepad),也可以解決無法打開超過64K檔案以及支援Unicode,在中文搜尋、取代也做的很好!也提供程式語言上色以及高亮功能。真的是原始碼編輯的好幫手!
延伸閱讀:
Delphi XE5封裝了一些Android相關的api
Androidapi.Jni
Androidapi.JNI.Os
Androidapi.JNI.JavaTypes
Androidapi.JNIBridge
Androidapi.JNI.App
如果在程式中需要呼叫其他的.apk 或 .jar的話呢~則需要使用到
Androidapi.JNI.Dalvik
Androidapi.JNI.GraphicsContentViewText
FMX.Helpers.Android
由李維大師所主持的Delphi XE5深入技術研討會,研討會過後二天,台灣QCom(捷康)就寄來了相關的文件了!
• 瞭解 Delphi XE5 如何在 Android / iOS 環境中運行
• 通往 Android / iOS 環境的重要觀念,類別 / 介面和方法
• 動態呼叫?靜態呼叫?
• 會使用下列幾個實例來說明:
– Delphi XE5 未封裝的 API
– BlueTooth
– Bar Code
– 其他第 3 方函式庫
延伸閱讀:
李維大師部落格 IT : 是工作還是嗜好?
捷康科技/Embarcadero 應用程式開發工具 http://embarcadero.qcomgroup.com.tw/
由於微軟內附的螢幕小鍵盤還真的有點小,加上POS餐飲系統開發需要螢幕小鍵盤,所以乾脆自己寫一個”大”鍵盤。
裡面需要做輸入法的切換,所以分享給大家。
需要Uses到Winapi.imm;
[pascal]
Uses Winapi.Imm;
[/pascal]
1取得所有的輸入法名稱
[pascal]
var
i: integer;
begin
for i := 0 to screen.imes.count – 1 do
begin
ComBoBox1.Items.Add(screen.Imes.strings[i]);
end;
end;
[/pascal]
2切換到輸入法
[pascal]
var
I: integer;
myhkl: hkl;
begin
if ComboBox1.Text <> ” then
begin
if Screen.Imes.Count <> 0 then
begin
I := screen.Imes.indexof(ComboBox1.Text);
if I >= 0 then
myhkl := hkl(screen.Imes.objects[i]);
activatekeyboardlayout(myhkl, KLF_ACTIVATE);
end;
end;
end;
[/pascal]
3關閉輸入法
[pascal]
begin
ImmSimulateHotKey(Handle, IME_THOTKEY_IME_NONIME_TOGGLE);
ComBobox1.Text := ”;
end;
[/pascal]
4取得目前輸入法
[pascal]
var
IMEHandle: THandle;
Idx: Integer;
IMEName: String;
begin
IMEName := ”;
ImeHandle := GetKeyBoardLayOut(0);
for Idx := 0 to Pred(Screen.Imes.Count) do
if HKL(Screen.Imes.Objects[Idx]) = ImeHandle then
IMEName :=Screen.Imes[Idx];
ShowMessage(IMEName);
end;
[/pascal]
GitHub連結: https://github.com/superlevin/DelphiIme
InfoPower是一套資料庫開發的元件,現在Woll2Woll Software也將它搬上FireMonkey並且支援Android了!
它們也在Googleplay上放了一個InfoPower FireMonkey Demo 的app讓大家下載試用。
不過壽山看來怎麼好像是在Android上跑Windows 呢?大家可以試看看好了!
相關連結:
Woll2Woll Software website : http://www.woll2woll.com/infopower.html
在更新程式時,需要知道目前下載到多少百分比及大小怎麼做?
在Delphi使用idhttp及IdAntiFreeze(防止程式看起來當掉)二個元件就可以做得到。順便列下關鍵程式碼
[pascal]
procedure TForm1.BtnDownloadClick(Sender: TObject);
var
tStream: TMemoryStream;
begin
tStream := TMemoryStream.Create;
try
IdHTTP1.Get(EdtSource.Text, tStream);
tStream.SaveToFile(EdtTarget.Text);
ShowMessage(‘Download Success!’);
except
ShowMessage(‘Download Fail!’);
end;
tStream.Free;
end;
procedure TForm1.IdHTTP1Work(ASender: TObject; AWorkMode: TWorkMode;
AWorkCount: Int64);
begin
Label1.Caption := BytesToStr(aWorkCount);
ProgressBar1.Position := aWorkCount;
Update;
end;
procedure TForm1.IdHTTP1WorkBegin(ASender: TObject; AWorkMode: TWorkMode;
AWorkCountMax: Int64);
begin
ProgressBar1.Max := aWorkCountMax; // Set File total size
Label2.Caption := BytesToStr(aWorkCountMax);
Update;
end;
[/pascal]
Github原始碼下載 : https://github.com/superlevin/downloadwithprocessbar
這次雙十一出現看起來很像太空總署發射中心的阿里巴巴總部戰情室,其實只有五坪大小。但是卻是掌握所有淘寶、天貓、支付寶等網站加入會員、流量、成交金額等數據的戰情中心。