المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : مساعدة في ايجاد طريقة البحث في القائمة Tree


ابو عبد الرحمن ماني
05-10-2017, 02:59 PM
مساعدة في ايجاد طريقة البحث في القائمة Tree

السلام عليكم ورحمة الله وبركاته
الى اعضاء هذا المنتدى المميز في كل ماتحمل هذه الكلمة من معنى
ارجو من حضراتكم ان تساعدوني في طريقة عمل البحث عن ملف موجود في القائمة الشجرية Tree داخل الاسطوانة التجميعية
ممكن اعطيكم الملف المفتوح و تعدلو عليه ليصبح يقبل البحث لانني مبتدأ و احتاج هاته الاسطوانة في عملي
واكون شاكرا لكم
https://i.imgur.com/dN9APKw.png

ثامر أبو بلقيس
05-10-2017, 07:20 PM
السلام عليكم ورحمة الله وبركاته
:abc_152::abc_152:مرحبا بك أبا عبد الرحمن:abc_152::abc_152: .. جميل لو وضعت الملف المفتوح
سيكون الرد من أعضاء المنتدى بطريقة أسرع و لن يبخلــوا

موفق :abc_138:

اقرأ هذا
http://www.abc4web.net/vb/showthread.php?t=33531

ثامر أبو بلقيس
05-10-2017, 08:24 PM
السلام عليكم ورحمة الله وبركاته

حاول تنفيذ الآتـــــي :
01 - فــي global functions
أكتب هذا الكود الطويل
sFirstPDFToLoad = "";
function AddToTree(sFullPath)
if (sFirstPDFToLoad == '') then
sFirstPDFToLoad = sFullPath;
end
tPathParts = String.SplitPath(sFullPath);
nRootLength = String.Length(sPDFRootFolder);
sFullFolderPath = tPathParts.Drive .. tPathParts.Folder;
nFullFolderPathLength = String.Length(sFullFolderPath);
sFullFolderPath = String.Mid(sFullFolderPath, 1, nFullFolderPathLength - 1);
if(String.Compare(sPDFRootFolder, sFullFolderPath) == 0) then
tNodeData = {};
tNodeData['Text']=tPathParts.Filename;
tNodeData['Data']=sFullPath;
tNodeData['ImageIndex']="0";
Tree.InsertNode("Tree1", Tree.GetChildCount("Tree1", "0") + 1, tNodeData);
else
sSearchString = tPathParts.Folder;
sSearchString = String.TrimRight(sSearchString, '\\');
nPosLastSlash = String.ReverseFind(sSearchString, '\\');
sSearchString = String.Mid(sSearchString, nPosLastSlash + 1, -1);
sFoundNodeIndex = Tree.FindNodeByText("Tree1", "0", sSearchString);
if sFoundNodeIndex == "" then
tNodeData = {};
tNodeData['Text']=sSearchString;
tNodeData['Data']="";
tNodeData['ImageIndex']="1";
sParentIndex = Tree.GetChildCount("Tree1", "0") + 1;
Tree.InsertNode("Tree1", sParentIndex, tNodeData);
else
sParentIndex = sFoundNodeIndex;
end
tNodeData = {};
tNodeData['Text']=tPathParts.Filename;
tNodeData['Data']=sFullPath;
tNodeData['ImageIndex']="0";
Tree.InsertNode("Tree1", sParentIndex .. "." .. (Tree.GetChildCount("Tree1", sParentIndex) + 1), tNodeData);
end
return true;
end
:abc_138:
02 - في حدث الصفحة on show
أكتب
nItemCount = Tree.GetChildCount("Tree1", "0");
for nCount=nItemCount, 1, -1 do
Tree.RemoveNode("Tree1", nCount);
end
sPDFRootFolder = _SourceFolder .. "\\AutoPlay\\Docs";
Tree.FindAllNodesByText =
function (strTree, strNode, strText, bExactMatch)
local tblItems = {};
local tbTree = Tree.GetChildren(strTree, strNode);
if tbTree then
for i,v in pairs(tbTree) do
if bExactMatch == false then
if String.Find(tbTree[i]["Text"], strText, 1, false) ~= -1 then
bFound = true;
else bFound = false;
end
else
if tbTree[i]["Text"] == strText then
bFound = true;
else bFound = false;
end
end
if bFound then
Table.Insert(tblItems, Table.Count(tblItems) +1, tbTree[i]["NodeIndex"]);
end
if Tree.GetChildCount(strTree, tbTree[i]["NodeIndex"]) ~= -1 then
tbReturn = Tree.FindAllNodesByText(strTree, tbTree[i]["NodeIndex"], strText, bExactMatch);
if tbReturn then
for i,v in pairs(tbReturn) do
Table.Insert(tblItems, Table.Count(tblItems)+1, v);
end
end
end
end
return tblItems;
else
return nil;
end
end

File.Find(sPDFRootFolder, "*.pdf", true, false, nil, AddToTree);
PDF.LoadFile("PDF1", sFirstPDFToLoad);
:abc_138:
03 - على مستوى عنصر القائمة المتفرعة و المسمى Tree1
و بالضبط في on select
أكتب
if e_NodeIndex then
tNodeData = Tree.GetNode("Tree1", e_NodeIndex);
if tNodeData then
if (tNodeData['Data'] ~= '') then
PDF.LoadFile("PDF1", tNodeData['Data']);
end
end
end
:abc_138:
04 - لديك عنصر Input1 لتكتب فيه معيار البحث
في حدثه on key أكتب
tbFound = Tree.FindAllNodesByText("Tree1", "0", Input.GetText("Input1"), false);
for i,v in pairs(tbFound) do
Tree.SetSelectedNode("Tree1", v); break
end
:abc_138:
5 - القائمة الشجرية تكون خالية + تدعم اللغة العربية من خصائصها اضبطها :abc_088:
:abc_138:
6 - ضع الكتب في المجلد Docs وعاين مشرووعك موفق:abc_138:

ابو عبد الرحمن ماني
08-10-2017, 01:10 PM
السلام عليكم ورحمة الله وبركاته
:abc_152::abc_152:مرحبا بك أبا عبد الرحمن:abc_152::abc_152: .. جميل لو وضعت الملف المفتوح
سيكون الرد من أعضاء المنتدى بطريقة أسرع و لن يبخلــوا

موفق :abc_138:

اقرأ هذا
http://www.abc4web.net/vb/showthread.php?t=33531

بارك الله فيك اخي وجدت صعوبة نوعا ما تفضل الملف المفتوح اذا استطعت التعديل عليه و اضافة خاصية البحث و اكون شاكرا لك و بارك الله فيك
https://www.mediafire.com/file/mux95rxuwkt74m6/Copy%20of%20pdf%20_by_azizsoft.rar

ثامر أبو بلقيس
08-10-2017, 03:18 PM
الأكـــواد المكتوبة تعمل بشكل سليم بعدما تمسح الأكواد الموجودة مسبقا في ملفك
و نسخ و لصق كل كود مكتوب في المكان المشار إليه

الأكواد سليمة الباقي عليك أنت لبناء مشروعك موفق :abc_139: