这个网志上的程式码是透过 SyntaxHighlighter Evolved 这支外挂来呈现,不过不知道为什么,我一直无法让程式码以 inline 的方式呈现,后来干脆自己用 span
标签加上 CSS 来呈现,后来注意到文字编辑器上 code 按钮我一直没用,最后干脆把新增的 CSS 写进 code
标签,之后就可以快速套用了。
继续浏览 »
Quick Report 在 1920*1080 解析度加上 125% 以上的显示设定环境时,会发生「预览列印」的比例不对(过大或过小),但实际印出来是正常的情形,如果要修正,需要在编译环境修正 Quick Report 的 qrprntr.pas 档,有两种修正方式。
<%# Eval("SDate", "{0:yyyy/MM/dd}") %> // 0: 表示定義整個括號裡面的第 0 個變數要採用此日期格式。 // 以下為兩個變數的範例。 string s = String.Format("At {0}, the temperature is {1}°C.", DateTime.Now, 20.4); Console.WriteLine(s); // Output similar to: 'At 4/10/2015 9:29:41 AM, the temperature is 20.4°C.'
【參考連結】
- 网 – 如何使用 eval 应用特定的日期格式? – 堆栈溢出
- C# – 什么是 0 在 “{0:MM dd yyyy}” 做? – 堆栈溢出
- String.Format 方法 (系统) | 微软文档
- 自订日期与时间格式字串 | 微软文档
- 标准日期和时间格式字串 | 微软文档
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的方法 | 三窟
Delphi 选单似乎一直都有字型会变回预设值 (8, 塔霍马) 的问题,国外有人提问,但没有解决方式。目前我能想到的暂时解法是设定一个功能键 (可设为热键),让 user 遇到字型变小时,自行重置字型大小。(测试过程可透过变更 Windows 显示大小百分比来让选单字型变回预设值)
procedure Tmainform.N93Click(Sender: TObject); begin Screen.MenuFont.Size := 12; xxxxxx.BringToFront; // 改變畫面焦點,以刷新選單畫面。 end;
【參考連結】
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 按键 – 堆栈溢出
- 键盘键码值对照表
var vTime, vTime1, vTime2: double; begin vTime1 := GetTickCount(); vTime2 := GetTickCount(); vTime := (vTime2 - vTime1) / 1000; Showmessage(floatToStr(vTime) + 's'); end;
【參考連結】
- delphi怎样求出两时间之间相差多少秒?-CSDN社区
刚刚在调 CSS 语法时,不知道为什么,解析度模拟成手机解析度后,版型没有呈现 RWD 该有的效果,一开始以为 @media screen 语法没有生效,反覆测试后,发现却是因为 width 语法没有跟着解析度的比例变动 (已经设成 auto 或用 max-width)。后来试出是要关闭「网页开发者」模式里的”触控模拟”功能,才会正常,目前还不知道为什么会这样影响。
继续浏览 »
今天在查系统纪录时,看到 MariaDB 有一大堆错误讯息,内容如下:
创新数据库: 表mysql / innodb_index_stats在列名table_name中的长度不匹配. 请运行mysql_upgrade
SQL Server 预设会吃光作业系统的记忆体,而在 SQL Server 专用的伺服器上,一般也会建议尽量把记忆体都让 SQL Server 使用,一来提升效率,二来也降低硬碟的 IO 损耗。不过若有特定的情况需要控制 SQL Server 的记忆体上限,可以藉由 SQL Server Management Studio (短信服务) 来达成。