今天想测试 Delphi 连结 AD 的功能,网路上教学说,可以透过「Component → Import Compont…」来汇入,但实际操作时,卻出現 “存取 OLE 登录时发生错误。” 的错误讯息。
二月
19
Quick Report 在 1920*1080 解析度加上 125% 以上的显示设定环境时,会发生「预览列印」的比例不对(过大或过小),但实际印出来是正常的情形,如果要修正,需要在编译环境修正 Quick Report 的 qrprntr.pas 档,有两种修正方式。
七月
11
unit unit1; interface uses Windows, Messages.... type TFormName = (Casefm1, Casefm2, Casefm3); function xxx(): Boolean; var StrFormName: String; CaseFormName: TFormName; begin StrFormName := 'Case' + vFormName; // 將 FormName(物件) 與 TFormName(值) 做區隔。 // (vFormName為帶有各FormName的字串變數) CaseFormName := TFormName(GetEnumValue(TypeInfo(TFormName), StrFormName)); case CaseFormName of Casefm1: begin .............. end; Casefm2: begin .............. end; Casefm3: begin ............... end;
【參考連結】
- case 判断string的方法 | 三窟
七月
11
Delphi 选单似乎一直都有字型会变回预设值 (8, 塔霍马) 的问题,国外有人提问,但没有解决方式。目前我能想到的暂时解法是设定一个功能键 (可设为热键),让 user 遇到字型变小时,自行重置字型大小。(测试过程可透过变更 Windows 显示大小百分比来让选单字型变回预设值)
procedure Tmainform.N93Click(Sender: TObject); begin Screen.MenuFont.Size := 12; xxxxxx.BringToFront; // 改變畫面焦點,以刷新選單畫面。 end;
【參考連結】
七月
11
procedure TfmQAB.FormShortCut(var Msg: TWMKey; var Handled: Boolean); begin if (Msg.CharCode = 116) and (HiWord(GetKeyState(VK_CONTROL)) = 1) then begin ...... end end;
【參考連結】
- 在菜单项选择期间抓住 SHIFT 键? – 德尔福技巧 – CJC德尔福 (酷德尔福技巧)
- 获取密钥状态:获取密钥状态 ,该函式检取指定虚拟键的 -百科知识中文网
- 德尔福 OnKeyDown,OnKeyPress,OnKeyUp区别_踏雪无痕的博客-CSDN博客_delphi onkeydown
- delphi key值表 – 台部落
- 如何在 Delphi 中检测 ctrl-t 按键 – 堆栈溢出
- 键盘键码值对照表
七月
11
var vTime, vTime1, vTime2: double; begin vTime1 := GetTickCount(); vTime2 := GetTickCount(); vTime := (vTime2 - vTime1) / 1000; Showmessage(floatToStr(vTime) + 's'); end;
【參考連結】
- delphi怎样求出两时间之间相差多少秒?-CSDN社区
十一月
23
前兩週公司網路架構大翻修,忙到不可開交,在修改打印服务器的IP时,有兩顆很機歪,弓弦不会割断我们的目标是一个开始,经过好来改后,变成只要闲置一段时间,他就会断线,一个整数天堂试了,最后被遗弃,就抓了個小程式,放在Server让程式每隔30秒就对print server来ping一下。