delphi4arab منتديات دلفي للعرب

نسخة كاملة : كيفية و ضع edit.text فى مصفوفه
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم

كيف يمكن ان احول edit.text الى مصفوفه بايتات array to byte
وعليكم السلام ورحمة الله
في دلفي النصوص String هي بدورها جداول من الأحرف:
كود :
ShowMessage(Edit1.Text[1]);
حيث يمكنك تحويل الحرف إلى Byte باستخدام التابع المضمن Ord
كود :
ShowMessage(IntToStr(Ord(Edit1.Text[1])));
فما الذي تحاول عمله؟
شكرا اخى
الفكره التى أردت تطبيقها هى هكذا مثل الصوره
كود :
http://www7.0zz0.com/2012/01/28/18/142574743.jpg
حاولت استعمال copy لكن لم تنجح فى الداله التاليه حيث ساعتبر بارماتر الداله فى ما بعد هو edit.text
كود :
tab=array[1..7] of byte الداله function strtab(s:string):tab; var i:integer; k:tab; begin for i:=0 to 7 do begin if i=0 then k[i]:= Ord(copy(s,i+1,2)) else k[i]:=ord(copy(s,i+2,2)); end; strtab:=k; end;
رسالة الخطأ
كود :
http://www14.0zz0.com/2012/01/28/18/655968754.png
تم الحل بهذه الطريقه
كود :
function strtab(s:string):tab; var i,j:integer; k:tab; begin for i:=0 to length(s)-2 do begin if i=0 then begin k[0]:=StrToByte(copy(s,i+1,2)); end else if i= 1 then k[1]:=StrToByte(copy(s,i+2,2)) else if((i>1) and (not((i mod 2)=0))) then begin j:=(i div 2)+1; k[j]:=StrToByte(copy(s,i+2,2)); end; end; strtab:=k; end;
إن كنت تحاول تحويل String إلى Bytes فهناك حلول جاهزة:
إن كان طول الجدول بنفس طول النص:
كود :
var S: string; begin S := Edit1.Text; Move(S[1], Tab, length(S));
في مثالك، استخدم HexToBin المعرفة في Classes:
PHP كود :
HexToBin(PChar(S), @Tab[1], length(S)); 
توابع أخرى مشابهة معرفة كلها في SysUtils:
كود :
HexByte HexChar IntToHex

بالتوفيق.
بارك الله فيكما