亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

用Delphi打造本地日程管理工具:JSON存儲(chǔ)與提醒機(jī)制實(shí)現(xiàn)全解析

用Delphi打造本地日程管理工具:JSON存儲(chǔ)與提醒機(jī)制實(shí)現(xiàn)全解析 簡(jiǎn)介一套基于Delphi FMX框架的Android日程管理APP示例工程面向移動(dòng)開發(fā)入門者及跨平臺(tái)實(shí)踐者覆蓋日程數(shù)據(jù)管理場(chǎng)景下的界面交互與存儲(chǔ)實(shí)現(xiàn)。壓縮包共27個(gè)文件類型包含pas源代碼、fmx窗體、vlb可視布局、SQLite數(shù)據(jù)庫(kù)文件.db及配套SQL腳本同時(shí)包括項(xiàng)目配置、部署文件與自定義ListView外觀包整體僅46KB輕量緊湊、模塊清晰。目前已有474人學(xué)習(xí)/下載。工程完整演示了SQLite數(shù)據(jù)庫(kù)建表與增刪改查、FMX自定義ListView樣式與滑動(dòng)/長(zhǎng)按手勢(shì)、調(diào)用Android系統(tǒng)分享組件、半透明背景提示框設(shè)計(jì)等關(guān)鍵技術(shù)附帶vkbdhelper虛擬鍵盤輔助單元和ListView外觀增強(qiáng)包目錄按窗體、數(shù)據(jù)層與工具單元?jiǎng)澐挚芍苯訉?dǎo)入Delphi IDE運(yùn)行。借助完整的工程文件與SQL初始化腳本讀者能快速掌握Delphi移動(dòng)開發(fā)中數(shù)據(jù)持久化、控件定制及系統(tǒng)能力調(diào)用的常見方法適合作為課程設(shè)計(jì)或入職練手項(xiàng)目參考。 事情是這樣的我手頭有一堆零散日程——會(huì)議、截稿日期、給客戶回電話、周末去保養(yǎng)車之前一直用手機(jī)日歷但坐在電腦前寫代碼的時(shí)候切到手機(jī)去記一筆總覺(jué)得別扭一來(lái)打斷思路二來(lái)手機(jī)日歷的重復(fù)提醒設(shè)置得越細(xì)越麻煩。網(wǎng)上找了幾款桌面日歷要么捆綁安裝要么強(qiáng)制登錄要么日歷視圖花里胡哨但連基礎(chǔ)提醒都做不好。一怒之下我決定用 DELPHI 自己寫一個(gè)日程管理 APP目標(biāo)是雙擊就能跑、數(shù)據(jù)本地存、提醒不漏、改起來(lái)順手。這篇文章就把整個(gè)開發(fā)過(guò)程、關(guān)鍵代碼和踩過(guò)的坑完整記錄下來(lái)。這個(gè)工具適合誰(shuí)如果你也是 Delphi 開發(fā)者或者你手里有個(gè)舊工具需要維護(hù)又或者你只是想找一個(gè)可以完全掌控?cái)?shù)據(jù)的桌面日程方案那這篇筆記應(yīng)該能幫你省不少時(shí)間。我不會(huì)只貼成品代碼而是把每一處設(shè)計(jì)決策的“為什么”也講清楚這樣你拿到之后可以按自己的習(xí)慣改。1. 為什么這個(gè)年頭我還在用Delphi寫日程管理1.1 一個(gè)老Delphi開發(fā)者的真實(shí)場(chǎng)景我平時(shí)的主要工作還是圍繞 Windows 桌面端的業(yè)務(wù)系統(tǒng)開發(fā)Delphi 對(duì)我來(lái)說(shuō)不是“上古傳說(shuō)”而是每天都在用的生產(chǎn)力工具。項(xiàng)目里有大量現(xiàn)成的 VCL 組件、公司內(nèi)部封裝好的公共庫(kù)、還有跑了好多年的業(yè)務(wù)邏輯——這些東西用其他語(yǔ)言重寫一遍成本極高也不劃算。日程管理這個(gè)需求本質(zhì)上就是一個(gè)“輕量工具類”應(yīng)用界面要簡(jiǎn)單、啟動(dòng)要快、數(shù)據(jù)要可控、提醒要穩(wěn)定。用 Delphi 寫這種工具編譯出來(lái)的 exe 通常只有幾 MB不需要依賴幾十 MB 的運(yùn)行時(shí)環(huán)境雙擊就跑發(fā)給同事也能直接用。這個(gè)優(yōu)勢(shì)在工具類軟件開發(fā)里非常實(shí)際尤其當(dāng)你需要在多臺(tái)電腦上快速部署的時(shí)候。另外還有一層原因我想把日程數(shù)據(jù)完全握在自己手里不依賴某個(gè)云服務(wù)的賬號(hào)體系。我的日程就是我的本地文件格式自己定備份直接拷文件換電腦把文件帶過(guò)去就行不存在“服務(wù)商哪天調(diào)整策略導(dǎo)致數(shù)據(jù)遷移麻煩”的問(wèn)題。1.2 用桌面版而非手機(jī)APP的三個(gè)理由這個(gè)項(xiàng)目標(biāo)題里雖然有“APP”三個(gè)字但我的第一落點(diǎn)選擇了 Windows 桌面版而不是手機(jī)端。原因有三個(gè)。第一我的絕大多數(shù)日程都產(chǎn)生在辦公場(chǎng)景人坐在電腦前的時(shí)間最長(zhǎng)桌面端常駐右下角托盤比掏手機(jī)快得多。日程提醒彈出時(shí)我正在寫代碼一個(gè)氣泡提示就夠了不需要拿起手機(jī)解鎖、查看、再放下。第二桌面端的數(shù)據(jù)管理更透明。手機(jī) APP 的沙箱機(jī)制導(dǎo)致數(shù)據(jù)文件不好直接訪問(wèn)而桌面應(yīng)用的數(shù)據(jù)就是一個(gè) JSON 文件放在 exe 同目錄或者%APPDATA%下面我自己能隨時(shí)查看、修改、備份。對(duì)于“簡(jiǎn)單日程管理”這個(gè)量級(jí)的需求這已經(jīng)是天花板級(jí)別的可控性。第三Delphi 在桌面開發(fā)上的效率仍然很高。VCL 組件成熟穩(wěn)定SQLite、JSON、網(wǎng)絡(luò)通信都有現(xiàn)成庫(kù)我一個(gè)晚上就能把核心功能搓出來(lái)。如果后續(xù)真要做移動(dòng)端FireMonkeyFMX可以復(fù)用大部分?jǐn)?shù)據(jù)層代碼這個(gè)后面再展開。2. 數(shù)據(jù)怎么存我選JSON文件而不是SQLite2.1 日程數(shù)據(jù)模型設(shè)計(jì)夠用就好第一版的時(shí)候我猶豫過(guò)要不要上 SQLite后來(lái)想明白了日程管理這種量級(jí)的數(shù)據(jù)一個(gè) JSON 文件完全足夠。SQLite 的查詢、索引、事務(wù)這些能力在這個(gè)場(chǎng)景里用不上反而引入了一個(gè)額外的 DLL 依賴。如果你的日程數(shù)量到幾萬(wàn)條再考慮 SQLite 也不遲但“簡(jiǎn)單 APP”的核心價(jià)值就是簡(jiǎn)單。我設(shè)計(jì)的日程字段如下刻意保持最小集合type TScheduleItem record ID: Integer; Title: string; // 日程標(biāo)題 StartTime: TDateTime; // 開始時(shí)間 Duration: Integer; // 持續(xù)分鐘數(shù) Category: string; // 分類工作、生活、其他 Priority: Integer; // 優(yōu)先級(jí)1高、2中、3低 Remark: string; // 備注 Done: Boolean; // 是否完成 Remind: Boolean; // 是否開啟提醒 end;StartTime用了TDateTime而不是字符串存儲(chǔ)這是一個(gè)很重要的決定。Delphi 的TDateTime本質(zhì)上是 double整數(shù)部分是日期小數(shù)部分是時(shí)間計(jì)算“距離提醒還有多少分鐘”只需要做減法不需要解析字符串效率高而且不容易出錯(cuò)。JSON 文件的結(jié)構(gòu)也很直白{ items: [ { id: 1, title: 項(xiàng)目周會(huì), startTime: 2025-06-16T10:00:00, duration: 60, category: 工作, priority: 1, remark: , done: false, remind: true } ] }文件我放在 exe 同目錄下的schedule.json簡(jiǎn)單粗暴。啟動(dòng)時(shí)如果文件不存在就自動(dòng)創(chuàng)建空數(shù)據(jù)退出時(shí)保存。為了防止寫壞文件我用了“先寫臨時(shí)文件再覆蓋原文件”的策略這個(gè)習(xí)慣能從根上避免斷電或程序崩潰導(dǎo)致數(shù)據(jù)丟失。2.2 基于TJSONObject的增刪改查代碼Delphi 從 XE 系列開始就內(nèi)置了System.JSON單元讀取和生成 JSON 非常方便不需要引第三方庫(kù)。我的加載函數(shù)核心邏輯是這樣的function LoadScheduleFromFile(const AFileName: string): TArrayTScheduleItem; var LJson: TJSONObject; LArr: TJSONArray; LObj: TJSONObject; I: Integer; begin SetLength(Result, 0); if not FileExists(AFileName) then Exit; LJson : TJSONObject.Create; try LJson.Parse(TFile.ReadAllText(AFileName, TEncoding.UTF8), False); if not LJson.TryGetValueTJSONArray(items, LArr) then Exit; SetLength(Result, LArr.Count); for I : 0 to LArr.Count - 1 do begin LObj : LArr.Items[I] as TJSONObject; Result[I].ID : LObj.GetValueInteger(id); Result[I].Title : LObj.GetValuestring(title); Result[I].StartTime : ISO8601ToDate(LObj.GetValuestring(startTime)); Result[I].Duration : LObj.GetValueInteger(duration); Result[I].Category : LObj.GetValuestring(category); Result[I].Priority : LObj.GetValueInteger(priority); Result[I].Remark : LObj.GetValuestring(remark); Result[I].Done : LObj.GetValueBoolean(done); Result[I].Remind : LObj.GetValueBoolean(remind); end; finally LJson.Free; end; end;保存的代碼反過(guò)來(lái)遍歷數(shù)組然后生成 JSON。這里有兩個(gè)容易踩的坑。第一個(gè)坑是TJsonObject.Parse的第二個(gè)參數(shù)傳False表示“不嚴(yán)格檢查”遇到未知字段直接跳過(guò)。這樣以后我要在 JSON 里加新字段舊程序讀新文件也不會(huì)崩兼容性會(huì)好很多。第二個(gè)坑是編碼。TFile.ReadAllText一定要指定TEncoding.UTF8否則在中文 Windows 上默認(rèn)會(huì)按 ANSI 解析中文日程標(biāo)題就亂碼了。寫入的時(shí)候用TFile.WriteAllText(AFileName, LJson.ToJSON, TEncoding.UTF8)兩頭都鎖死 UTF-8就再也不會(huì)出現(xiàn)“在我電腦上正??降酵码娔X上亂碼”的問(wèn)題。新增和刪除就沒(méi)什么好說(shuō)的了。新增就是SetLength擴(kuò)容然后賦值 ID用TStopwatch.GetTimestamp或者簡(jiǎn)單的遞增計(jì)數(shù)器生成。刪除我用的是“標(biāo)記刪除”——不真正從數(shù)組里移除而是把Done置為True。一個(gè)是保留歷史記錄另一個(gè)是避免刪除操作引發(fā)的數(shù)組元素整體搬移數(shù)據(jù)量小的時(shí)候其實(shí)無(wú)所謂但習(xí)慣養(yǎng)好了將來(lái)數(shù)據(jù)量上來(lái)了也不會(huì)手忙腳亂。3. 核心交互與提醒機(jī)制的實(shí)現(xiàn)細(xì)節(jié)3.1 日期處理三件套今天、本周、周六日判斷日程管理離不開日期判斷尤其是“今天有哪些日程”“本周有哪些日程”以及熱詞里有人問(wèn)過(guò)的“Delphi如何判斷是周六日”。這三個(gè)場(chǎng)景我拆成了三個(gè)獨(dú)立函數(shù)各有各的注意點(diǎn)。判斷“今天”不能用FormatDateTime(yyyy-mm-dd, ADate) FormatDateTime(yyyy-mm-dd, Now)這種字符串比較雖然能用但每次比較都要格式化循環(huán)幾萬(wàn)次就能感覺(jué)到慢。更優(yōu)雅的方式是直接用YearOf、MonthOf、DayOf三個(gè)函數(shù)function IsToday(const ADateTime: TDateTime): Boolean; begin Result : (YearOf(ADateTime) YearOf(Now)) and (MonthOf(ADateTime) MonthOf(Now)) and (DayOf(ADateTime) DayOf(Now)); end;判斷“本周”稍微有點(diǎn)講究。一個(gè)自然周是從周一開始還是周日開始在不同的業(yè)務(wù)場(chǎng)景里結(jié)論不同。Delphi 的DayOfWeek返回 1 到 7其中 1 代表周日7 代表周六這一點(diǎn)很容易搞錯(cuò)。如果你要讓周一作為一周的開始判斷代碼要這樣寫function IsThisWeek(const ADateTime: TDateTime): Boolean; var LToday, LTarget: TDateTime; LOffset: Integer; begin LToday : DateOf(Now); LOffset : DayOfWeek(LToday) - 2; // 周一偏移為0 if LOffset 0 then LOffset : 6; LTarget : DateOf(ADateTime); Result : (LTarget LToday - LOffset) and (LTarget LToday - LOffset 7); end;這段代碼的原理是先算出“本周一”是哪一天然后判斷目標(biāo)日期是否落在[本周一, 下周一)的區(qū)間內(nèi)。寫成和而不是和是為了避免跨周時(shí)的邊界錯(cuò)誤。判斷周六日則是熱詞“delphi如何判斷是周六日”的直接答案function IsWeekend(const ADateTime: TDateTime): Boolean; var LDay: Integer; begin LDay : DayOfWeek(ADateTime); Result : (LDay 1) or (LDay 7); // 1周日, 7周六 end;3.2 提醒輪詢TTimer的間隔、去重和誤觸發(fā)處理提醒是日程管理最核心的功能沒(méi)有之一。我的方案是主窗體放一個(gè)TTimer每秒或者每 30 秒觸發(fā)一次掃描所有開啟提醒且未完成的日程如果當(dāng)前時(shí)間落在“提醒時(shí)間窗口”內(nèi)就彈一個(gè)系統(tǒng)托盤氣泡。procedure TMainForm.Timer1Timer(Sender: TObject); var LNow: TDateTime; begin LNow : Now; for var LItem in FItems do begin if LItem.Remind and (not LItem.Done) and (LItem.StartTime LNow) and (LItem.StartTime - LNow 30 / 1440) and (not FReminded.ContainsKey(LItem.ID)) then begin FReminded.Add(LItem.ID, True); ShowNotification(LItem.Title 將于30分鐘內(nèi)開始); end; end; end;這里有幾個(gè)設(shè)計(jì)細(xì)節(jié)值得展開說(shuō)。第一30 / 1440是把 30 分鐘轉(zhuǎn)換成TDateTime的小數(shù)形式。因?yàn)橐惶焓?1.0所以 1 小時(shí)就是1/241 分鐘就是1/1440。這個(gè)換算容易錯(cuò)我一開始直接寫成0.5結(jié)果程序把“提前 12 小時(shí)提醒”當(dāng)成了“提前 30 分鐘提醒”調(diào)試了半天才發(fā)現(xiàn)問(wèn)題。第二FReminded是一個(gè)TDictionaryInteger, Boolean用來(lái)記錄哪些日程已經(jīng)提醒過(guò)了。這個(gè)去重設(shè)計(jì)很重要否則每隔 30 秒就會(huì)重復(fù)彈一次能把人煩死。但要注意程序重啟后FReminded會(huì)被清空如果日程還沒(méi)過(guò)期再次啟動(dòng)時(shí)又會(huì)提醒一次。我的處理方式是在加載日程數(shù)據(jù)時(shí)把所有StartTime Now的提醒日程重新加入待提醒集合這樣重啟后也只會(huì)提醒一次不會(huì)反復(fù)轟炸。第三TTimer 的觸發(fā)精度問(wèn)題。Windows 的TTimer默認(rèn)基于WM_TIMER消息優(yōu)先級(jí)比較低如果 CPU 忙可能延遲幾百毫秒甚至幾秒。對(duì)于日程提醒這種場(chǎng)景這個(gè)誤差完全可以接受沒(méi)必要上高精度的多媒體定時(shí)器。但如果你的系統(tǒng)經(jīng)常休眠或睡眠TTimer在喚醒后可能會(huì)連續(xù)觸發(fā)多次。我的處理是在Application.OnRestore事件里重置FReminded并刷新一次列表確保睡眠期間錯(cuò)過(guò)的提醒不會(huì)在喚醒后集中爆發(fā)。4. 界面布局與用戶體驗(yàn)的小心思4.1 主界面三欄布局日歷縮略、日程列表、詳情編輯界面我用的是 VCL 經(jīng)典三欄布局左側(cè)一個(gè)TMonthCalendar日歷縮略組件中間一個(gè)TListView顯示日程列表右側(cè)一個(gè)TPanel放詳情和編輯控件。這個(gè)布局參考了 Outlook 的經(jīng)典樣式用戶上手零成本。TMonthCalendar選日期后中間的TListView就刷新成當(dāng)天的日程列表。每次切換日期時(shí)我用前面寫的IsToday邏輯判斷一下如果是今天列表標(biāo)題前加一個(gè)藍(lán)色的“今天”標(biāo)記這個(gè)小小的視覺(jué)提示非常實(shí)用。詳情編輯區(qū)的內(nèi)容很直接TEdit輸入標(biāo)題TDateTimePicker選擇開始日期和時(shí)間TEdit輸入持續(xù)分鐘數(shù)TComboBox選擇分類TComboBox選擇優(yōu)先級(jí)TMemo輸入備注兩個(gè)TCheckBox分別控制“已完成”和“開啟提醒”這個(gè)編輯區(qū)一次只對(duì)應(yīng)一個(gè)選中日程不搞復(fù)雜的多行編輯表格。簡(jiǎn)單工具就是要讓用戶一眼看懂當(dāng)前在編輯什么數(shù)據(jù)綁定我用的是最原始的控件賦值和讀取完全沒(méi)用 LiveBindings因?yàn)樵谶@個(gè)場(chǎng)景里 LiveBindings 的模板配置成本比手寫賦值高不少。4.2 列表排序、顏色標(biāo)識(shí)與雙擊編輯的交互閉環(huán)TListView在 VCL 里的表現(xiàn)力比TStringGrid強(qiáng)很多我設(shè)置了ViewStyle : vsReport列依次是時(shí)間、標(biāo)題、分類、優(yōu)先級(jí)、狀態(tài)。排序邏輯只有一條規(guī)則未完成的排前面完成的排后面同組內(nèi)按開始時(shí)間升序。這個(gè)排序不在界面里做而是在刷新列表前對(duì)FItems數(shù)組做一次排序TArray.SortTScheduleItem(FItems, TComparerTScheduleItem.Construct( function(const A, B: TScheduleItem): Integer begin if A.Done B.Done then begin if A.Done then Result : 1 else Result : -1; Exit; end; Result : CompareValue(A.StartTime, B.StartTime, 0.000001); end));顏色標(biāo)識(shí)也很重要。我在TListView.OnAdvancedCustomDrawItem事件里根據(jù)優(yōu)先級(jí)上色高優(yōu)先級(jí)紅色、中優(yōu)先級(jí)橙色、低優(yōu)先級(jí)默認(rèn)色。這個(gè)視覺(jué)層級(jí)能讓你在一堆日程里迅速找到最緊急的事。交互閉環(huán)我做得比較完整單擊列表項(xiàng)右側(cè)詳情面板加載數(shù)據(jù)可以就地編輯雙擊列表項(xiàng)彈出獨(dú)立的編輯窗口右鍵彈出菜單新增日程、編輯、標(biāo)記完成、刪除這里有一個(gè)容易忽略的細(xì)節(jié)標(biāo)記完成和刪除一定要分開。我見過(guò)很多工具把“刪除”放在“完成”旁邊用戶本想勾選完成結(jié)果手滑點(diǎn)成刪除數(shù)據(jù)就沒(méi)了。我的做法是刪除操作必須彈確認(rèn)框并且要輸入“確認(rèn)刪除”四個(gè)字才能刪。這個(gè)門檻雖然看起來(lái)有點(diǎn)反人性但實(shí)際用下來(lái)它真的把誤刪的概率降到了零。5. 編譯發(fā)布與踩坑實(shí)錄5.1 發(fā)布配置靜態(tài)編譯、圖標(biāo)和版本信息Delphi 開發(fā)工具類應(yīng)用最爽的一點(diǎn)就是發(fā)布簡(jiǎn)單但簡(jiǎn)單不等于不用配置。我每次發(fā)布前都要檢查三個(gè)地方。第一Project Options - Runtime Packages里的“Build with runtime packages”一定要取消勾選。如果不取消生成的 exe 會(huì)依賴一堆rtl260.bpl、vcl260.bpl之類的動(dòng)態(tài)庫(kù)換臺(tái)電腦就報(bào)“找不到 bpl”。取消勾選后默認(rèn)靜態(tài)鏈接exe 體積會(huì)從幾百 KB 漲到幾 MB但換來(lái)的是雙擊即用、拷貝即用。第二Project Options - Application - Icon設(shè)置應(yīng)用圖標(biāo)。默認(rèn)的 Delphi 圖標(biāo)一看就是沒(méi)用心日程工具屬于辦公軟件建議自己做一個(gè)簡(jiǎn)單的日歷圖標(biāo)。用 16x16 和 32x32 兩套尺寸保存為.ico文件再在項(xiàng)目設(shè)置里指定。第三Project Options - Version Info里填寫版本號(hào)和產(chǎn)品名稱。沒(méi)有版本信息的 exe 在 Windows 的 UAC 彈窗里會(huì)顯示“未知發(fā)布者”雖然不影響使用但看起來(lái)不專業(yè)而且后續(xù)做自動(dòng)更新時(shí)版本號(hào)是判斷是否需要更新的基礎(chǔ)。5.2 我踩過(guò)的三個(gè)坑字體模糊、DPI縮放和JSON解析亂碼第一個(gè)坑是高 DPI 縮放導(dǎo)致的字體模糊。現(xiàn)在很多筆記本默認(rèn)縮放是 150% 甚至 200%如果程序沒(méi)有聲明支持 DPI 感知Windows 會(huì)做位圖拉伸界面字體會(huì)發(fā)虛。解決辦法是在項(xiàng)目源文件.dpr最開頭加上一行procedure SetDPIAware; begin SetProcessDPIAware; end;或者在項(xiàng)目設(shè)置里把DPI Awareness設(shè)為Per Monitor V2。Delphi 10.4 之后的版本默認(rèn)配置已經(jīng)處理得不錯(cuò)但如果你還在維護(hù)老項(xiàng)目這個(gè)坑幾乎必踩。第二個(gè)坑是 JSON 解析亂碼前面提到過(guò)編碼問(wèn)題這里再說(shuō)一個(gè)具體現(xiàn)象在 IDE 里運(yùn)行程序一切正常發(fā)布后到別的電腦上中文變成一堆問(wèn)號(hào)。原因是我在保存 JSON 時(shí)使用了TFile.WriteAllText的默認(rèn)編碼ANSI而讀取時(shí)卻按 UTF-8 讀?,F(xiàn)在我的代碼里所有文件讀寫都顯式指定TEncoding.UTF8再也沒(méi)有出過(guò)亂碼。第三個(gè)坑是TTimer的Interval設(shè)置成了 1000毫秒也就是 1 秒觸發(fā)一次??雌饋?lái)沒(méi)問(wèn)題但每次觸發(fā)都要遍歷全部日程數(shù)組如果數(shù)組里有一萬(wàn)條數(shù)據(jù)每秒遍歷一次也不是什么大事問(wèn)題不大??扇绻谶@個(gè)事件里又做了界面刷新性能就急劇下降。我的經(jīng)驗(yàn)是提醒邏輯和界面刷新邏輯一定要拆開提醒輪詢只做數(shù)據(jù)判斷發(fā)現(xiàn)需要提醒了再調(diào)TThread.Queue去更新界面避免在 Timer 事件里直接操作控件。6. 后續(xù)擴(kuò)展方向別小看這個(gè)小工具6.1 用SendMessage把日程提醒推到局域網(wǎng)內(nèi)其他電腦日程管理做到這個(gè)程度已經(jīng)能覆蓋日常使用了。但作為一個(gè)愛折騰的人我還想讓它和團(tuán)隊(duì)協(xié)作場(chǎng)景打通。熱詞里有人搜過(guò)“delphi 局域網(wǎng) 從一個(gè)程序 發(fā)消息給 另一個(gè)程序 sendmessage”這其實(shí)是一個(gè)很實(shí)用的擴(kuò)展方向。Windows 原生提供了一個(gè)SendMessageAPI通過(guò)窗口消息機(jī)制在兩個(gè)進(jìn)程之間傳遞數(shù)據(jù)。我計(jì)劃給日程工具加一個(gè)“局域網(wǎng)提醒廣播”功能當(dāng)本機(jī)日程提醒觸發(fā)時(shí)同時(shí)對(duì)局域網(wǎng)內(nèi)其他同款工具發(fā)送一條自定義窗口消息。接收方收到消息后在托盤區(qū)彈一條“來(lái)自XX電腦的日程提醒”。這樣一個(gè)小團(tuán)隊(duì)在辦公室各用各的電腦也能實(shí)現(xiàn)輕量級(jí)的日程互通不需要搭服務(wù)器不需要數(shù)據(jù)庫(kù)同步純消息通知一條WM_COPYDATA就搞定了。具體做法是定義一個(gè)自定義消息 ID比如WM_APP 100發(fā)送方用SendMessage(FindWindow(TScheduleMainForm, nil), WM_APP 100, 0, LPARAM(DataStruct))發(fā)送接收方在WndProc里攔截并處理。注意WM_COPYDATA傳字符串是最穩(wěn)的因?yàn)樗膬?nèi)存由系統(tǒng)管理不會(huì)出現(xiàn)指針失效問(wèn)題。6.2 從Excel批量導(dǎo)入排班表/課表的思路另一個(gè)高頻需求是批量導(dǎo)入。比如老師拿到一張課表 Excel想一次性導(dǎo)入日程工具手工錄入 30 條記錄容易出錯(cuò)。Delphi 里讀 Excel 的成熟方案是 TMS FlexCel 或者老牌的TExcelApplication但如果你只是導(dǎo)入xlsx文件還有一個(gè)輕量思路用zip解壓xl/worksheets/sheet1.xml然后用IXMLDocument解析。這個(gè)方法聽起來(lái)很繞但好處是不依賴 Excel 組件不需要安裝 Office也不用引入大的第三方庫(kù)。xlsx本質(zhì)上就是一個(gè) zip 包里面的 XML 文件存儲(chǔ)了單元格數(shù)據(jù)。只要你知道每個(gè)單元格的行列坐標(biāo)讀出來(lái)并不難。當(dāng)然如果你不想折騰 XML最省事的方式是讓用戶先另存為 CSV然后用TStringList逐行解析5 分鐘就能搞定導(dǎo)入功能。這個(gè)擴(kuò)展方向的價(jià)值在于它把一個(gè)“個(gè)人日程工具”升級(jí)成了“能銜接已有工作流”的入口。排班表、課程表、項(xiàng)目里程碑這些數(shù)據(jù)往往已經(jīng)在 Excel 里了能自動(dòng)導(dǎo)入工具的使用意愿會(huì)大幅提升。我在實(shí)際使用這個(gè)日程管理 APP 時(shí)最大的體會(huì)是不要一上來(lái)就想著功能大而全先把“新建日程”“準(zhǔn)點(diǎn)提醒”“不會(huì)重復(fù)打擾”這三個(gè)核心體驗(yàn)做到位比堆砌任何花哨功能都管用。Delphi 開發(fā)這種輕量工具仍然非常高效我現(xiàn)在每天開機(jī)的第一件事就是打開它雙擊、看今天、處理日程整個(gè)過(guò)程不到十秒。如果你也想動(dòng)手寫一個(gè)建議直接從 JSON 存儲(chǔ) TTimer 輪詢 ListView 展示這種最簡(jiǎn)架構(gòu)開始跑通之后再按自己的習(xí)慣慢慢加功能。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
丁香六月婷婷| 日韩一级二级| 色妇综合网| 欧美亚洲玖玖玖| 亚洲?V无码专区在线电影| 操老熟女AV| 美女啊啊啊啊pc| www.黄色在线| 国产精品com| 欧美 日韩 另类 亚洲| 久久久成人国产精品无码| 久久久久久九九九九九| 亚洲男人天堂视频| 青娱乐av在线| 另类图片五月| 国产乱人伦AVA麻豆软件.| 亚洲av青草久久一区二区| 人妻免费观看| 欧美综合网1| 色情综合网| 影视综合无码少妇| 色网亚洲人| 日韩电影天堂视频一区二区| 夜夜嗨av午夜成人| 中文有码第五页| 中文字幕精品资源在线| 97在线观看免费视频| 在线小视频| 天天干一区二区| 丁香五月激情网| 人人摸人人叼| 女上位精品在线| 亚洲五月婷婷| 日韩熟女乱伦中出| 懂色影视久久| 一本色道无码DVD中文字幕| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 激情婷婷综合久久| 中文字幕在线免费观看| 天天拍夜夜| 羞答答AV中文字| 欧美国产有色电影| 久久久久78| 欧美曰韩国产精品| 久久久久久九九九九-美女久久久久久久-成人AV| 色五月婷婷中文字幕| 日韩精品1区2区中文字幕| 青草草免费网站av| 色噜噜狠狠色综合日日| 色婷婷综合网| 成人精品视频一区二区| 天天综合网1| 性生活无遮挡纯毛片在线看| 精品免费成人久久| 欧美性爱在线无码| 操逼网站网站| 岛国黄片网站| 精品人体无圣光凹凸| 性色AV网站| 97伊人超碰| 国内外毛片在线观看| 极品出轨视频网站| 九九九九精| av草草在线电影| 黄片www.| 91neishe| 高清肉丝中文无码| 日韩熟女视频二区| 一本久久久精品| 97欧美综合| 伊人网在线点播| 97超碰天天| 丁香色婷婷| 六九九九| 天美传媒Av在线| 一区二区三区无卡视频在线观看| 操逼无毒无码免费视频| 欧美97在线欧| 蜜乳AV.COM| 玖玖爱免费观看视频| av天堂影视中文在字幕在线中文| 啊啊啊啊在线观看网址| 成人九九| 99热线麻豆| 一级性爱视频免费观看 | 久久综合18p| 五月开心久久AV官网| AV99热18这里只有精品| 男人天堂久久精品| 性生活久久久久久久久久| 久久人爽| 亚洲A曰本VA欧美VA视频| 天天色天天干天天射| av国产无码| 亚洲熟女综合| 亚洲熟女综合网| 99视频这有这里有精品| 偷窥自拍亚洲天堂网爆| 桃色六月天| 五月天欧美色图| 性猛交| 人妻蜜桃臀| 日韩黄色片子| 一区二区久久天天干狠狠| 欧美综合 站| 玖玖综合视频| 91亚洲情色| 久久亚洲精品成人av| 欧美成人性爱视频大全| 天天综合AV| 神马久久啊啊| 丰满人妻一区二区三区| 成功精品影院| 日韩欧美中文字| 欧美成人色| 99少妇内射| 色噜噜人妻丝袜AV资源| 噜噜噜噜久久久精品免费| 欧美中文综合| 五月丁香久久| 91中文字幕| 免费?级毛片无码?∨蜜芽试看| 国产树林里野战在线看| 伊人久久亚洲中文字幕不卡| 色吧5亚洲| 色老汉玖玖爱| 91美女精品| 国产极品美女高潮无套在线观看| 91久久久视| 丰满少妇一区二区三区免费看| 夜色AV无码手机在线影院| 亚洲限制级| 三级日本一区二区三区| 欧美精品丝袜久久久中文字幕| 伊人国产av| 超碰欧美| 久久久久久性爱视频| …中文字幕亚洲乱,97人妻无码费视…| 欧美一级特黄淫片在线观看| 国产一区二区在线播放,久久亚洲精品中文字幕第一区,亚洲精品在线中文字幕视频 | 婷婷六月色| 免费农村成人少妇人妻Aa一区二区视频| 久久婷婷一区| 992这里有精品| 91黄站| 大稥蕉免费视频这里只有精品| 上床啊啊啊| 人妻少妇精品一区二区三区| 97干在线视频| 超碰碰97| 日韩在线一区二区| 99蜜月精品久久| 天堂俺去俺来也www久久婷婷| 91久久18禁| 无码 黑人一区二区三区| 中国熟女网站| 曰韩欧美国产传媒麻豆第一区| 亚洲欧美综合图片| 欧美色一二三| 高清无码一区二区三区| 久草大| 夜夜做夜夜爽精品视频| 中文字幕一区av| 国产黄色在线播放观看| 一区二区三区男人的天堂| 色爱三区| 亚洲综合999| 人妻在线大香蕉| 亚洲最大AV网| 日本精品五区| 熟妇色99| 一区二区 日韩 欧美 国产 传媒| 亚洲图片欧洲图片aⅴ| 欧美九一精品久久久熟妇| 人人爱操| www.av在线视频| 欧美日韩人妻精品一区二区三区| 天综合中文| 99re公开精品免费视频| 69av一区二区三区| 91亚洲丝袜熟女| 天天日老熟妇| 久久黄色网址| 四虎在线观看网站| 无码91| 午夜福利国产欧美日韩夜夜| 成人久久久精品| 亚洲国男人的天堂| 青青操综合网| 国产精品美女视频诱惑| 欧美综合天堂| 日日干夜夜骑| 夜夜嗷嗷一区二区| 夜夜高潮夜夜爽高清视频一| 99自拍视频在线观看| 国产精品探花色| 香蕉99秘 一区精品蜜桃臀| 日本999精品| 伊人综合色网| 天天天乱色综合全| 色久桃花影院在线观看| 91爱剪切久久| 人妻五十路在线| 麻豆精品久久久久久久| 国产日韩区| 性欧美第一页| 天天热精品| 亚洲色9| 激情四射婷婷四五月天| 亚洲欧美电影| 久久国模av| 亚洲日韩精品一区二区| 亚洲黄色AV电影| 少妇超碰在线| 男女啊啊啊啊啊| 七月婷婷综合| 综合久久9| 性欧美另类高清| 干婷婷综合网| 可以免费观看的日韩av毛片| jizzjizz欧美| 天天操天天舔| 国产一区自拍欧美日韩| 午夜无遮挡男女啪啪视频| 91成人18| 欧美日韩不卡a片| 99热在线观看| 97亚洲中文| 亚洲同性aV综合| 久久精品一区一起草| 秋霞鲁丝午夜无码一区二区三| 嗯嗯,啊啊,国产精品| 东京热免费视频| 人妻系列无码专区中文有码| 自拍偷拍 日韩无码| 国产精品亚洲一级av第二区| 新婚人妻扶着粗大强行坐下| 欧亚免费视频| 亚洲图片 91| 欧美 传媒 麻豆 日韩 偷拍| 亚洲色悠悠久久88| 欧美综合在线第一页| 51一区二区三区| 欧美日韩狠狠爱| 加勒比综合88| 亚洲学生妹高清av| 国产精品人妻免费精品| 久久久久久久伊人精品| WWW黄片COM| 婷婷丁香久久| 久久精品人体| 强奸乱伦Av网| 九九九九九九免费视频| 日韩电影天堂视频一区二区| 日韩精品一二三| 夜夜嗨一区二区三区直播内容| 国产乱伦亚洲| 中文视频在线观看| 亚洲图片婷婷五月天| 色妺妺在线视频| 色优久久| 日韩无码久久熟女一级片| 久久久婷婷| 蜜桃视频一区二区三区 | 亚洲天堂中文字幕无码男同| 久久夜色一区二区| 天天干18禁| 熟女五十路一区二区三| 亚洲激情网一二三四区| 国产精品电| 国产午夜精品理论片a大结局| 日韩黄片视频试看| 泰国AV在线观看| 国外91| 深夜福利黄片| 日韩欧美女优电影| 国产女人9999| 国产AV激情无码久久无码| 亚洲精品99| 久久伊人亚洲AV无码网站| 久久蜜桃一区二区| 国产理论视频在线播放| 性做久久久久久免费观看软件| 91oumei| 18禁久极品美女久久哦哟呀!| 久久线上视频免费看| 欧姜老司机| 骚熟女吞| 懂色av中文字幕一区二区三区天美| 国产精品99999| 三级色影综合网| 欧美少妇高潮视频| 综合色色网| 伊人网免费视频| 一区二区三区精品视频| 成人片视频| 女性喷水高潮在线观看| 91人人爽人人爽人人人,gav福利视频导航,日韩欧美亚洲国产字幕四区 | 日韩中文字幕宗合在线| 欧美成人免费在线观看| 亚洲乱色熟女一区| A啊啊在线观看| 综合网天天| 欧美三级一级| 国产一区二区三区高清视频| 蜜奶av| 亚洲国产丝袜熟女av| 俺去也婷婷| 亚欧洲日韩国产精品| 久久 国产 无码| 黄色小说亚洲| 欧美日韩激情无码专区| 国产精品乱码久久久、久久| 久久怡红院| 亚洲综合在线91| 99操| 午夜噜噜噜| 日本韩欧美在线播放a| 欧美手机在线综合| 日韩成人电影AV| 99操逼| 日韩啪啪啪啪啪| 国产外初女出血视频| 久久三| 欧美草草高清日韩视频| 天天综合精品| 欧美99999| 久久久人妻| 老司机福利青青草| 蜜臀99999| 黑人操一区二区| 天天插夜夜爽| 久久男人精品| 精品欧美乱码久| 亚洲熟妇图片| www…国产操逼| 国产精品香蕉| 超碰超碰95| 国产高清免费不卡av| 天堂av最新电影网| 欧美中文字幕男人天堂久久精品 | 亚洲无码国产精品久久| 欧美手机在线综合| 中文字幕高清20页视频| 亚洲国产成人福利在线观看| 男人的天堂99| 蜜臀AV成人精品蜜臀| 性爱视频无打码在线观看| 成人夜夜| 人妻精品综合中文字幕在线| 国产原创剧情在线丝袜| 成人无码电影在线观看网| 粉嫩av一区二区三区四季| 色婷婷五月天| 在线观看高清AV| 天天干夜夜肏| 97色爱| 亚洲成?V人片在线观看福利| 国产成人亚洲精品无码最新在线| 成人熟女区| 午夜福利成人免费视频| 免费一级黄色录像影片| 97视频在线播放| 夜色97| 国产精品2020| 色色无码| 九九黄色网| 欧美精品xxxwww| 男女无套 免费网站| 天欧美在线| 97午夜剧场日韩| 女人高潮抽搐喷水视频网站| 无码精品久久久天天影视| 亚洲自拍97| 青青久日| 99热线麻豆 | 色天堂综合| 九色 人妻 大香蕉| 婷婷综合激情| 婷婷五月丁香五月| 亚洲无线码一区国产欧美国| 成人免费在线网站| 国产精品爱欲| 极品色综合| 精品999日本| 黄网站黄视频网站进入口| 色香阁在线| 嗯嗯啊在线视频| 香蕉久久AⅤ...| 日B操| 亚洲女人91| 青青伊人加勒比海| 青青草在线成人视频| 一区二区三区 日韩欧美| 欧美亚洲素人制服精品| 一起草欧美| 亚洲国产精品99久久久| 极品另类| 久久久久久久伊人精品| 日本操大逼| 精品在线观看视频在线| 玖玖婷婷五月天| 91久久久久久久| 99re久久| 嗯嗯嗯,草死我| 精品十三区| 久久精9| 青青欧洲黑| 美女97超碰| 青娱乐蜜桃臀AV色婷| 欧美色天堂网在线视频| 亚洲熟女乱综合一区二区三区| 国产中文福利| www男人天堂| 亚洲天堂男人| 岛国片在线播放| 93人人操人人| 色色色热| 亚洲国成人情色好看电影| 极品内射| 亚洲一二三四区在线免费看视频| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 97就爱干| 亚洲自拍97| 国产狂喷潮在线精品| 亚洲 自拍偷拍 欧美| 亚洲暴力强奸AV| 999国产精品999| 精品久久久久,69国产成人精| 精品免费一区二区三区在线亚洲人成| 9久精品视频在线观看| 日韩熟女视频二区| 91中文字幕| 岛国毛片手机在线观看| 免费看久久久性性| 欧亚乱色熟女一区二区| 国产精品天美传媒| 97在线欧| 久久久久久久六六| 国产精品一区二区久久精品| 亚洲欧美中文一区二区三| 亚洲国产欧美一区二区潘金莲| 成人精品一区二区三区| 高潮毛片无遮挡高清免费| 99久在线精品99re8| 好淫网一二三视区| 国产中文字幕在线| 91一区二区三区蜜桃| 美女黄频a美女大全免费皮| 久久精品国产精品亚洲艾通辽熟妇| 精品国产一区二区三区久久久蜜臀 | 亚洲淫乱骚妇AV| www.成人无码| 国产辣妈在线视频福利| 啊啊啊啊嗯嗯嗯用力好爽 | 国产高潮AA片免费看| 无码99| 精品美女人人干| 美女尤物福利视频| 啊啊啊好大好深| 人妻一二三区| 午夜AV人气不卡| 欧美黄色大香蕉一区二区| 啊啊啊啊啊在线视频| 欧美日韩欧美| 成人小说视频在线精品欧美| 激情AV| 久久综合久色欧美综合狠狠| 日本人妻中文字幕精品| 精品欧美А∨无码黑人大荫蒂| 国产av尤物| 玖玖大干人妻| 麻豆啪啪啪视频| oumeisetu综合| 诱惑网综合| 久久婷婷综合国际产色怕| 求求你操操我| 韩国手机不卡无码三级视频| 日本一二区免费| 超碰2017| 日本性爱少妇| 久久久久久免费电影| 日韩欧美俄罗斯A片| 91国产丝袜美女| 久久东京伊人一本到鬼色| 在线只有精品| 日本高清熟女久久一区| 中文字幕一区二区在线日韩精品| 欧洲小说色图视频另类| 亚洲毛片基地专区| 91九久| 亚洲精品久久久久毛片A片拉屎 | a在线视频免费观看| 日本精品久久久久久久| 一区二区三区免费岛国片| 97精品国产精品免费观看| 午夜视频黄| 久久久国产精品人妻丝袜| 欧美福利视频啊啊啊啊| 婷婷操逼| 黄片视频观看| 97AV在线免费观看| 香蕉人人操tv| 91丝袜美女视频| 少妇蜜汁| 96精品久久久久中文字幕| 亚洲资源吧| 无码日韩人妻av一| 婷婷8月天青娱乐| 欧美综合区| 台湾佬中文娱乐网久久久久久久久久com | 色欲无码人妻日韩欧美精品| 日韩中文字幕熟妇人妻| 成人精品一区二区91毛片不卡 | 极品尤物自安慰| 91丝袜美女| 天堂性色| 国产青视频| 欧美综合国产精品久久丁香| 综合五月天| 北京专精特新企业招聘信息| 天天天乱色综合全| 超碰99在线| 欧美激情性久久久久久| 91搞逼视频| 精品久久久久,69国产成人精| 国语对白露脸XXXXXX| www.99中文字幕| 天天草天天干天天日| 日韩人妻精品| 久久熟女人| 国产精品久久久久久片| 中文字幕一区二区三区50路| 欧美情色贴图| 激情五月激情综合网| 亚洲AV无码翔田千里网站| 国产精品露脸在线观看| 欧美性高潮| 91老熟女| 99精品综合久久久久五月天| 色爱综合网欧美| 色综合色综合网| 91人妻最真实刺激绿帽| 伊人网在线点播| 超碰天天久久79| 最新亚洲人成网站在线影院| 中文有码9| 91九色丨国产丨爆乳| 夜色综合| 老鸭窝在线视频播放| 日韩懂色网| 欧美专区第一页| 一块操欧美性爱| 香蕉久久AⅤ...| 一级一性爱免费视频| 精品人妻一区二区蜜桃视频| 97bbn| 蜜桃中文字日产乱幕4区| 性爱综合网| 伊人久操| 日韩黄片视频试看| 中文字幕精品免费一区二区| 久一区久久蜜桃| 综合网亚洲在线| 俺也射| 人妻黑丝袜电影| 欧美91在线+|+欧美| 国产免费大片| 嫩草 人人网精品| 天色综合网| 欧美人妻精品| 色爱综合网| 综合熟女| 丝袜AV一二三区| 日韩女优在线| 久久久99久9| 熟女突然公开看18禁影片 | 妇女一区二区三区| 久久久91| 天堂男人网| 成人福利视频网| 爽 好舒服 无码刺激久久| 三级色影综合网| 色色九区| 久久久久九九九九| 国产1024在线播放| 高清无码一区二区三区| 色哟哟511老熟女| 欧美另类综合久久| 婷婷中文网| 婷婷99狠狠躁天天躁| 中文字幕 国产 精品 | 精品97精品97| 囯产精品强| 精品女同一区| 色悠久| 操啊国产| 78久久| 精品人体无圣光凹凸| 伊欧美综合视频| 欧美日韩91| 九久9热| 超碰久久草| 秘书高跟黑色丝袜国产91在线| 天啪| 日韩美女啪啪一区| 91粉嫩萝控精品福利网站_精品影音先锋国| av爱爱爱| 日本精品无码三级网站| 60秒免费小视频| 韩国三级三级BD在线| 伊人操操| 久久五月丁香| 国产精品久久久久久高清无码免费看| 精品免费囯产一区二区三区| AV一二区| 欧美日韩插逼视频| 999综合网| 国产家庭乱伦网址| 97欧美日韩| 操逼大黄片| 青女偷拍网| 日日骚一区二区三区| 久久综合九色综合欧洲98| 欧美精品xxxwww| 人人看人人插| 99热伊人| 96国产精品| 青青草视频久久久久| 一级婬片120分钟试看| 清纯唯美综合亚洲| 男人的天堂,欧美亚洲另类国产日韩,日本高清一区二区 | 大香蕉人妻久久| 老外又粗又长一晚做五次| 亚洲精品成人激情在线| 国产精品熟女九九九| 啊啊啊好大好深| 99亚洲精品| 大香交伊人网| 欧美白嫩女HD| 婷婷性网| 精品国产人成在线| a网站免费观看| 330dv亚洲成年视频网| 亚洲色图综合| 美日韩成人| 日韩9999| 久久精品成人| 少妇高潮对白在线观看| 欧美少妇性乱| 中文字幕日韩专区精品系列| 乱伦Av网| 欧美日本天堂| av天堂电影网| 熟妇熟女视频一区二区三区| 蜜桃传媒视频第一区入口在线看| 久草网站免费在线观看| 国产精品密臀网在线观看| 日韩免费a级毛片无码a∨| 久久九九99| 欧美伦乱爱| 色翁荡息又大又硬又粗又爽| 久久AV无码1区2区3区| 中文区中文字幕免费看| 特级毛片特黄久久免费看 | 狠狠夜色午夜久久综合在线| 国产亚洲色停停久久99精品91| 亚洲影视综合网| 天美传媒AV在线| 亚洲砖码砖专无区2023| 国产白嫩精品久久| 乱伦熟女专区| 欧美日韩中文亚洲v在线综合| 国产黄色 A 片免费看| 亚洲一区中文字幕一区| 亚洲精品骚逼| 啪啪AV导航| 超碰这里有精品| 亚洲日韩美国人妻| 超碰9 7女人| 五月天激情婷婷| 97色综合中文网| 久久综合18p| 蜜臀无码视频在线观看| 青青草中文-久久青草精品一区二区三| 巨乳特殊服务按摩| 色五月综合| 亚洲性猛交| 蜜臀久久99精品久久久老,,| 变态综合色| 東南亚性呦成人伦理资源在线视频| 中文字幕在线免费观看2| 中文字幕,人妻,日韩| 五月丁香社区婷婷日韩欧美精品影院| 1024亚洲中文字幕久在线看片你懂的| 超碰人人干天天射| 日韩专区久久久| 色在线综合| 97在线资源| 久久综合精品一区二区三区| 丝袜视频一区二区在线播放国产中文| 日本操大逼| 日韩一级二级三级| 国产精品网站www| 国产成人超碰在线| 天天爽夜夜欢视| 插日本熟女视频| 97操| 操少妞在线视频| 天天综合亚在线| 久久久久夜夜夜夜| 婷婷综合网站| 亚洲综合另类小说色区亚洲成av人片在www | 午夜AV污污污| 牛牛aV| 内射中国少妇高清视频免费视频 | 亚洲国产高清福利视频| 欧美精品1区2区3区| 久久国产AⅤ| 欧美亚洲国产91在线| 成年女人18级毛片毛片免费观看| 亚洲中字慕不卡| 色欧美天天| 中文字幕一区二区韩| 欧美伦乱爱| 男人的天堂在线有码| 免费国产电影一区二区| 欧美性性性| 中文久久96| 久久婷色| 丰满人妻大屁一区二区| 久久久99免费| 久日91在线| 99热国产| 人人操肉肉| 翔田千里爆乳巨臀无码| 超碰99re| 欧美图片色五月天| 欧美少妇一区二区三区| 日日狠狠久久偷偷色综合免费| 人人人人插| 欧美精品一区二区少妇免费A片| 美欧色综合| 97人人色| 天堂亚洲精品| 91色噜噜狠狠| 久久侵犯人妻爽爽爽| 九九热视频在线观看| 无码少妇精品一区二区60岁老人| 精品人妻av在线播放| .精品人妻一区二区三| 亚洲啪啪综合?v一区综合精品区| 97久久久久久久久久| 人妻在线臀日韩| 天天综合AV| 97干日韩| 欧美婷婷五月天| 婷婷中文网| 在线观看国产黄色| 黄网色一区二区三区四区精品| 91久久青青草原精品| 天天做天天爱| 四虎AV在线播放| 精品国产乱码久久久| 国产熟女一区二区| 91精品少妇搡搡搡| 九色 人妻 大香蕉| 在线观看av区| 国产又黄又爽| 91成人在线免费视频| 五月丁香婷婷色| 欧美色图亚洲色图成人在在线| 欧美 亚洲 制服 精品| 欧美黄色图片| 亚洲欧美色综合| 亚洲在线A| 欧美日韩美女精品久草一区二区三区| 久久綜合很很很| 久久性爱城| 国产成年女人免费视频播放a| 国产一区在线观看无码AV| 久久露脸国产老熟女| 日韩在线76| 国产亚洲国产超碰| 久草婷婷| 极品白嫩美女白浆成人福利在线看| 久久日本熟女精品一区| 综合久久少妇中文字幕| 天天看,天天做| www.激情| 熟女自慰久久久| 激情终合网| 国产无吗在线播放| 国产欧美日韩在线不卡第一页| 亚洲一区二区av| 中文字幕乱码在线| 人妻丰满熟妇一区二区三| 操逼视频免费日韩无码| 69人妻精品一区二区绯色| 亚洲91色在线| 亚洲日本大香蕉1| 又大又大又大又粗爽高潮观看 | 人人干人人搞人人摸| 密桃99999| 麻豆成人av| 2017,超碰| 国产色综合亚洲色综合吹潮| 成人五级久久| 香蕉久久国产AV一区二区| 大香蕉宗合网在线| 日韩啪啪网| 怡红院视频在线| www.av不卡中文字幕| 中文字幕后石码三区四区| 18禁网站在线播放| 五月天色图| 少妇精品久久久八区九区| 人妻丝袜二区| 99在线免费公开视频| 精品人妻av在线播放| 日韩成人电影AV| 男人兔费天堂| 福利五区| 免费公开人人操| 狠狠狠狠狠干| 99热这里只有是精品10| 97超碰久久| 人人透人人操| 9999亚洲精品| 国产无码久久高清| 日韩成人大片在线观看| 久久久九九九九| 亚洲欧洲av影音| 夜夜肏2021| 有码专区最新中文字幕有码| 亚洲AV噜噜狠狠网址蜜桃动漫| 超碰激情808| 中文字幕乱码在线| 人人干人人操人人爱| 97精品国产97久久久久久| 黄页网站成人免费| 入口操逼网站| 亚洲欧美啪啪| 国产精品久久久无码AV网站| 国产92麻豆天美精品色欲5| 亚洲天堂人妻一区二区| 欧美性暴力猛交XXXX| 人妻熟女一区二区在线视频| 天天操夜夜操| 亚洲国产一区二区入口| 精品人妻一区二区三区视频在线| 久久99手机免费视频| 日韩精品亚洲专区在线影视| 麻豆av一区二区| 久久精品视频一区三区小泽玛利亚| 伊人激情五月天一区二区| 99色综合| 操久久久久久| 国产精品粉嫩福利在线| 超碰97人妻免费在线| 啪啪资源网| 91亚洲欧美| 蜜臀久久99精品久久久久久无删减| 色偷偷超碰亚洲| 一区二区不卡| 色九九九九| 99热在线不卡| 亚洲视频,小说| 性色av婷婷久久一区二区点复制| 人人人人插| 欧美性爱视频免费一区一A | 久久久久久AV无码免费网站| 九九九九九九九九九九九蜜桃| 大香蕉AV在线| 亚洲成人一区二区精品| 免费的很黄很污的全部视频| 久久久久久国产精品| 久久骚少妇| 亚洲第一视频 欧美风情 日韩| 日本午夜久久电影| www.男人的天堂| 青青操97| 久久综合国产精品国产| 欧美一二三区四五区| av网站在线观看了| 女人天堂网| 久久东京国产精品视频| 成人一区二区三区四区| 亚洲天天做日日做天天谢日日| 色五月第四色| 成人性爱免费播放| 国产超碰AV在线精品| 自拍内地三级在线观看| 国产中文字幕曰本毛片| baisiav| 人妻在线大香蕉| 欧美久久婷婷| 欧美美女视频| 极品销魂美女一区二区| 国产h片在线观看视频| 亚洲男人天堂AV| 91爆操视频| av国产无码| 白嫩妹子国产骚| 蜜色网色哟哟| A V视频日本| 久久亚洲一区女同性恋中文字幕| 2001天天操| 国产成人欧美一区二区三区的国产| AV色五月天| 内射日韩大臀美女| 天天干夜夜一操| 中文字幕一区二区视频在线观看| 色大师网站www永久网站视频| 夜夜草网站| 午夜激情成人在线观看| 日韩有码中文字幕女同性恋| 国模限制级电影| 探花视频免费观看国产专区| 一区二区三区网站日日骚| 欧美福利视频啊啊啊啊| 超碰97首页| 亚洲免费看片| 色噜噜狠狠色综无码久久合欧美| 免费AV播放| 日产操逼| 蜜桃臀久久| 天天插天天操| 黄骗免费| 亚洲色欧美| 色约约一区=区三区| 99只有精品| 亚洲天堂另类小说男人| 婷婷色色网| 国产福利第一视频| 欧美,日韩综合久久| 综合激情二| 人妻性爱一区二区| 午夜精品久久99蜜桃的功能章节| 51一区二区三区| 操淫穴亚洲五月丁香 | 黄片无码在线制服| 黄色av网站在线播放| 亚洲福利影院一区久久| 中文字幕一区二区无码成人| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 精品网站9999| A V少妇特黄三级| 丁香五月自拍| 青青草天天亲夜夜操网| 成人性爱美曰韩| 思思热久久成人| 久久美女国产| 26UUU欧美日本| 亚洲综合网91| 久久粉色| 亚欧美综合| 日本久久久精品电影| 亚洲青青草| 亚洲诱惑天堂 | 日本一级真人黄色性爱视频| 亚洲脚交| 夜夜骑操视频| 天操天操夜操夜月月年年操操| 精品一二三区四视频| 色香伊人| 人妻丰满熟妇av无码区蜜桃| 国产suv精品一区| 午夜噜噜噜| 91色插| 97亚洲中文| 99999久久精| 91色狼| 91P0RNY大屁股人妻| 麻豆视频国产一区二区| 思思热免费在线视频| 91肉丝| 中国AAAAAA黄色片| 成人久久久| 黄色免费一级在线毛片| 少妇一区二区三区| 国产精品成人AV片免费看网站| 囯产精品久久久久久久久久梁医生| 中日韩免费看男女操逼大全| 色欧洲| 一起草三级AV电影在线观看| 日韩高清黄片| 99国产精品| 欧美探花网| 亚洲一区二区三区欧美日韩| 国产无马av| 日韩成人色图| 亚洲天堂日本| 国产97av| 肏逼福利网站| av网站在线观看了| 欧美日韩国内不卡| 精品少妇后入一区二区三区四区人妻巨乳 | 亚洲国产中文字幕| 伊人网高清| 97在线视频观看网站| 啊v视频在线观看| 超碰性爱97| 国内精品久9| 九九九九九精品视频| 亚洲成人在线高清| 亚洲福利中文字幕在线| 青青草在线视频人人想人人上| 天天操天天谢| 国产午夜在线观看| 午夜福利激情在线视频| 久久久国产三级黄色片| 99精品在线| 一区二区三区成人| 亚洲风情在线观看| 综合国产影视三级| 欧美成人A天堂片在线观看| 99爱在线视频| 91性| 国内亚洲高清无码| 天美麻花大全视频| a人欧美综合天堂麻豆| 蜜桃传媒视频第一区入口在线看| 成 人 A V免费视频在线观看| 超碰成人国产| 日本99一区二区| 91丝袜视频在线观看| 亚洲黄色a级片| AV老汉| 女同性恋中文字幕| 好吊色综合| 日本色婷婷| 久久久无码av精| 欧美一区二区在线资源| 免费簧片在线观看| 99在线视频播放| 九九五月天| 人人妻人人澡人人爽久久av| 人妻中文字幕日韩电影| 99色婷婷中文字幕乱色| 神马九九| 色色99| 亚洲图片 欧美电影| 日本乱人伦片中文三区| 秋霞成人做爱| 色综合潮| 东北女人无套内谢视频| 五月天综合网| 999热日韩精品| 国产一级内射高清视频| 欧美人妻精品一区二区| 久久欧美1卡2卡3| 亚洲涩图欧美| 人妻aa| 99热国产精品| 国产精品视频内谢女人| 亚洲欧美自拍偷拍| 性色avv| 97视频在线播放| 嗯啊不要在线| 青青久久艹| 九九黄色视频在线观看| 青青草视频久久久久| 99re6在线视频播放免费精品| 色官网色综合| 色哟哟av网址| 强奸乱伦动态污图免费 | 欧美黑人精品一区二区| 很很很很操| 五月丁香拍拍激情综合三级| 99re不伦| 中文字幕一区二区日韩网| 一牛一区二区三区久久| 麻豆美女丝袜人妻中文| 9久综合网| 亚洲毛片久久| 色婷婷久久| 校园春色综合香蕉| 无码av永久免费专区网站| 欧美亚洲成人在线一区二区三区| 免费看黄视频亚洲网站| 午夜精品久久久99| 亚洲一区日韩精品| 97久久精品亚洲中六字幕| 大鸡巴久久| 亚洲nv男人的天堂网| 神马久久久久久| 蜜桃精品一区二区三区ww| 在线综合网| 日本精品一区三区| 97操97干| 嗯嗯,啊啊,国产精品| 人妻献身系列第54部| 亚洲AV在线资源| 丁香五月婷婷基地| 午夜人人操| 欧美韩国你懂得在线| 91天堂色男人的天堂| 校园春色中文字幕AV| aaaa少妇高潮大片| 欧美色亚洲色| 好吊妞转入那个网| 九九久久久| 97久久超碰| 国产精品操| 天天综合网入口~91| 欧美日韩第一页| 免费看黄片现成| 欧美日韩免费专区在线| 超碰99re| 超碰综合色| 日韩成人网址| 国产在线强奸视频| 91亚洲影视| 任我爽视频在线观看| 亚洲精品九九九| 污污污8888| 99亚亚热| 国产小视频91| 欧美福利视频啊啊啊啊| 51一区二区三区| 熟女天天干| AV电影在线播放| 做爱A级亚欧| 起碰97| 夜夜嗨一区| ai欧美亚洲小说| 天天透伊人| 欧美精品1区2区3区| 午夜视频黄| 欧美性爱一区二区三区| 亚洲情色一区二区三区| 91肏屄网| 日日夜夜狠狠| 美国日韩黄片| 亚洲视频精选| 老熟妇一区二区三区| 亚洲视频,小说| 九九热免费国产视频婷婷伊人| 国产a片操逼| 麻豆三极片| 亚洲欧美碰碰| 美女上床网站| 97精选久久| 亚熟hd视频在线| 97国伦国色| 欧美 中文字幕 一区| 国内外色色色色色成人视频| 国产美女裸体秘 永久无遮挡| 中文字幕一区二区三四五区日日骚| 爱干爱射网啊啊啊| 五月婷婷激情| 一区二区影院| 伊人网高清| 午夜后入| 91爱看| 伊人精品视频| 欧美72网页| 日本东京热大香蕉a片| 色盈盈影院|