الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

[ تمت الإجابة ]عرض الحروف في الكونترول

مغلق
بدأه pc.2020 في 31 مارس 2007 · 20 رد · 4,107 مشاهدة · في أرشيف قسم Windows APIs
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم.

عندي التباس ولم افهمه؟

اردت ان احسب width character لكتابة المكتوبة في كونترول معين -لنفرض ان عندي notepade.exe وفيه بعض الكتابة - حسب شرح الوندوز يقول ان يجب ان تعمل اختيار اولا مثال:

hdc هو ل كونترول edit داخل النوتباد
  hFont := GetCurrentObject(hdc, OBJ_FONT);
	 GetObject(hFont, SizeOf(TLogFont), @LogFont);
	 SelectObject(hdc, hFont);
form1.label7.Caption := logfont.lfFaceName + ' '+ inttostr (logfont.lfWidth);

يعطيني system وعرضة 7؟

واستعملت GetTextFace(hdc, 256, FaceName);

ونفس الشي؟

وايضا استعملت GetCharABCWidthsFloat(hdc, Ord('A'), Ord('Z'), cw);

وهي ثابت مهما غيرت حجم الخط في notepad.exe

فهل احد عنده اي فكرة لماذا هذا يحدث . او طريقة لحساب عرض الخط (لحروف) في النوتباد. ليس عرض المحرف ككل مثل

GetTextExtentPoint32(hdc, Pchar(s3), Length(s3), FontSize);

هذا يعمل معي . حيث يعطينى طول المحرف ككل.

وشكرا

تم تعديل هذه المشاركة بواسطة pc.2020 في 31 مارس 2007 في 18:08

#2

سؤالك غير واضح

متى تريد الحصول على عرض الخط في ال Notepad؟ و لماذا؟

عند حدث MouseMove مثلاً؟

انت قلت ما يلي:

hdc هو ل كونترول edit داخل النوتباد
  hFont := GetCurrentObject(hdc, OBJ_FONT);
	 GetObject(hFont, SizeOf(TLogFont), @LogFont);
	 SelectObject(hdc, hFont);
form1.label7.Caption := logfont.lfFaceName + ' '+ inttostr (logfont.lfWidth);

طيب كيف حصلت على hdc الخاصة بالكونترول؟

هل من الممكن الكود كامل لو سمحت؟

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#3

السلام عليكم

شكرا اخ وليد

اريد الحصول عليه والنوتباد مفتوح ومكتوب به بعض الجمل. لفحص انا كتبت الجمل باكبر خط ممكن حتى يتبين لي .

لماذا: اعمل على تطوير برنامج ياخذ التكست من اي وندوز.

نعم عند حدث حركه الماوس. وحركة الماوس ليس هوك: اي اني استعمل تايمر (لفحص). باخذ GetCurrentPos .

كيف حصلت على hdc حق الكونترول: باخذ اول الهندل حق الوندوز ثم الهندل حق الكونترول اديت edit ثم اخذ getDC(hwin)

وليس GetWindowDC

واخذت الهاندل عن طريق برنامج اخر(خارجي لفحص والمطابقة) (الهاندل لedit كونترول وهوا بالطبع ثابت) . اي انهم متطابقان .

لذالك فالهندل سليم.

وشكرا

#4

GetWindowDC

اقتباس
كيف حصلت على hdc حق الكونترول: باخذ اول الهندل حق الوندوز ثم الهندل حق الكونترول اديت edit ثم اخذ getDC(hwin)

وليس GetWindowDC

واخذت الهاندل عن طريق برنامج اخر(خارجي لفحص والمطابقة) (الهاندل لedit كونترول وهوا بالطبع ثابت) . اي انهم متطابقان .

لذالك فالهندل سليم.

بإمكانك الحصول على Window Handle بسهولة لكن HDC لا يمكن لك الحصول عليه بتلك الطريقة لانه يتغير...

فبعد القيام بعمليات رسم سيقوم البرنامج بإستدعاء ReleaseDC والتي تقوم بعمل Release للـ Device Context ... لذا لن تتمكن بتلك الطريقة من الحصول على معلومات الـ Object من النوع OBJ_FONT حيث أنه تم عمل Release ...

راجع MSDN الجزء الخاص بـ Context Device Funtion لمعلومات أكثر عما أعنيه ..

إن كنت تريد تلك المعلومات فلدي طريقة لذلك ... ضع الفكرة التي تريد عملها بتفصيل أكثر ليتم النقاش بشكل واضح ....

كبداية :- إستعمل API Hook ...

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#5

شكرا اخي cipher

انا فهمت من ردك : اني لا استفيد من HDC? ولا فائده من GetDC .وجميع اوامر API التى تعتمد على hdc اذا لم تكن النافذه تابعة لبرنامجي (program main thread ).

فهل هذا الفهم صحيح؟

ثانيا: انا لا اقوم بالرسم؟ وانما استدعاء بعض خصائص نافذه معينة.

بالنسبة relaeaseDC انا استدعيها بعد انتهائي من طلب خصائص hdc.

عموما سوف اطلع على Context Device Funtion اكثر

وشكرا.

#6

ما فهمته من ردك على الأخ وائل :

أنت برنامج بالدلفي وتستعمل Timer , تحصل على مكان مؤشر الماوس Mouse Point ومنها تحصل على Window Handle وليكن hWnd لـ Edit Control التابعة لـ Notepad ... إلى هنا كل شئ سليم

بعد ذلك عن طريق hWnd تريد الحصول على HDC للحصول على معلومات الـ Object من النوع OBJ_FONT... وهنا تكمن المشكلة ...

ممكن أعرف لماذا تريد معلومات الـ OBJ_FONT ؟

عذراً كنت مستعجل في ردي السابق ... هي Device Context Functions ...

الردين السابقين إستناداً لتجربة سابقة لنفس المشكلة و كنت وضعت المشكلة في Borland Groups وجاءني رد له يشير إلى ذلك أيضاً ...

لم توضح الغرض الذي تريد عمله ؟

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#7

ربما هذه الطريقة تفيدك :

إستخدام WM_GETFONT للحصول على HFont

ثم إستدعاء GetObject

لم أجرب هذه الطريقة بسبب الوقت ...

ربما سأضع رد أخر بعد يومين ...

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#8

شكرا اخي cipher

انا احتاج ان احسب عرض (character width) لكتابة الموجودة في notepad.exe .

حيث استطعت ان استرجع الكتابة من النوتباد ولكن ليست بنفس خصائص الفونت الموجود في notepad

والكتابة التى استطعت الحصول عليها هي كاملة (اي جميع مافي النوتباد) لذالك انا اريد طريقة احسب بها موقع الفارة في النوتباد لاسترجاع كلمة واحدة والتى تقع تحت الفارة مباشرة.

فالطريقة الوحيدة هي اني احسب عرض الحروف ومن ثم اقوم بطريقة حسابية ممكن ان اعرف اي كلمة تقع تحت مؤشر الفارة مباشرة.

ارجوا ان تكون الفكرة قد وصلت.

سوف احاول نصيحتك( إستخدام WM_GETFONT للحصول على HFont)

وشكرا

ملاحظة:

هم في (MSDN) غير واضحين؟

اقتباس
The GetDC function retrieves a common, class, or private DC depending on the class style of the specified window. For class and private DCs, GetDC leaves the previously assigned attributes unchanged. However, for common DCs, GetDC assigns default attributes to the DC each time it is retrieved. For example, the default font is System, which is a bitmap font. Because of this, the handle to a common DC returned by GetDC does not tell you what font, color, or brush was used when the window was drawn. To determine the font, call GetTextFace.

Note that the handle to the DC can only be used by a single thread at any one time.

After painting with a common DC, the ReleaseDC function must be called to release the DC. Class and private DCs do not have to be released. ReleaseDC must be called from the same thread that called GetDC. The number of DCs is limited only by available memory.

والفقرة

اقتباس
the handle to a common DC returned by GetDC does not tell you what font, color, or brush was used when the window was drawn. To determine the font, call GetTextFace.

لقد استعملت GetTextFace ولكن لم تفلح ايضا؟

#9
اقتباس
فالطريقة الوحيدة هي اني احسب عرض الحروف ومن ثم اقوم بطريقة حسابية ممكن ان اعرف اي كلمة تقع تحت مؤشر الفارة مباشرة.

تفكير سليم, و لكن سؤال: هل سوف تقوم في كل مرة بجلب كل ما في ال Notepad لكي تعرف ماهي الكلمة التي تحت مؤشر الماوس؟

ماذا عن دعم برامج اخرى غير ال Notepad

اقتباس
لاسترجاع كلمة واحدة والتى تقع تحت الفارة مباشرة.

هل تريد عمل برنامج يلتقط الكلمة من تحت مؤشر الماوس :D تم مناقشة الامر في منتدى الدلفي و في هذا المنتدى

كيفية قراءة كلمة من adobe Reader عند وضع المؤشر عليها

ارجوا ان تعود للرد من خلال معرفك الاخر

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#10

هناك برنامج اسمه Windows Text Copier

ان كان لك في التنقيح يمكنك ان تعرف كيف يتم ذلك

يمكن تحميل البرنامج من موقعهhttp://www.pretty-soft.com

d4baa0.gif
#11

الاخ وائل

بالنسبة لجلب الكلام كلة نعم بس سوف يجلبة مرة واحدة؟ حتى يتغير الماوس الى وندوس اخر (parent) اخر.

بالنسبة لدعم البرامج الاخرى اكثرها بس اعتقد ممكن كلها .

بالنسبة لطريقة:

انا اعرف بعض التقنية المستخدمة مثل

OCR واحتمال الخطاء فيها 15% تقريبا.

hook

في هذه الطريقة انت تحتاج ان تعمل هوك لاكثر من 17 API اللتى تستعمل مثل outtextW; outtextA

وكثير غيرها.

والتقنية اللتى استعملتها اسمها Accessiblity

وهي طريقة سهلة والوندوز توفرها لك. Interface IAccessible

لازلت اجرب بها.

بالنسبة لادوب ريدر (لم اطلع على الموضوع اللذي ذكرتة بعد ). انا قرءت في الادوبي انه يستعمل Accessiblity وفي موضوع بالنت يناقشها بالتفصيل.

اقتباس
هناك برنامج اسمه Windows Text Copier

ان كان لك في التنقيح يمكنك ان تعرف كيف يتم ذلك

يمكن تحميل البرنامج من موقعهhttp://www.pretty-soft.com

تسلم اخي محمد سوف اطلع على الموضع ان شاء الله

#12
اقتباس
بالنسبة لجلب الكلام كلة نعم بس سوف يجلبة مرة واحدة؟ حتى يتغير الماوس الى وندوس اخر (parent) اخر.

ماذا سوف تفعل اذا كان هناك اكثر من صفحة؟ كيف سوف تعرف ما هو المعروض على الشاشة منها؟

ماذا لو كان الملف كبير؟هل سوف يتم جلبه كله؟ ذلك سوف ياخذ وقت

مازلت اناقش التقنية التي تريد استخدامها, دون الدخول في التفاصيل, هل سوف تنجح ام لا؟

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#13

طبع جلب الكلام كلة سوف يكون على شكل pointer

للذالك انت تستطيع ان تتحرك بالوينتر عدد الحروف اللذي تريد. الى الان لم افكر بمشكلة عدد الصفحات او كيف ستحسب؟ انا في مشكلة حساب الاحرف؟ عندما انجح فيها سوف انتقل لمشاكل الاخرى.

اكيد هناك مشاكل كثيرة. ولكن اعتقد طريقة Accessible طريقة واعدة ولربما تنجح. خير البرهان هو التجربة.

انا لم اتعمق بها الى الان. فقد كتقنية جديدة حبيت اجربها لاغير. وهذه التجربة سوف تفهمني اكثر في التقنية الجديده هذه. حتى لو لم انجح.

وشكرا

#14
اقتباس
وهذه التجربة سوف تفهمني اكثر في التقنية الجديده هذه. حتى لو لم انجح.

وشكرا

انا احترم رأيك ولا اعرف لماذا لا احب ان اعمل في شيئ ما اذا لم ادرس الكثير من الامور قبل الدخول بها, اذا الهدف هو تعلم التقنية الجديدة بغض النظر اذا نجحت الفكرة ام لا؟

اذا هكذا

هل لك ان تعطيني رابط يشرح التقنية الجديدة Accessible لانني لم افهم ما هي الى الان :) , او ما هو المقصود بها

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#15

اخي وائل هذه بعض المواقع

http://blogs.msdn.com/oldnewthing/archive/.../23/118893.aspx

مدونة سارة فورد (موقع يحتوي الكثير على هذه التقنية وسارة هي احد المطورين لهذه التقنية لدى ماكروسوفت)

http://blogs.msdn.com/saraford/archive/tag...ty/default.aspx

#16

تقنية جيدة

جربتها على IE وتم الحصول على النص(حتى وإن كان بالعربية) الخاص بالـ Object حيث يقع المؤشر ..

طبعاً بالإمكان الحصول على النص من أماكن كثيرة ...

جربتها على الـ Edit في Notepad ولم تحصل على النص . حالياً في مرحلة البحث عن السبب ... إن كان لا يوجد مانع من أن تضع الكود هنا فأتمنى ذلك (حتى أستطيع البدء بالبحث في مشكلة الحصول على الكلمة فقط )...

جربتها على Opera ولم يتم الحصول على شئ ....

طبعاً تبقى النقطة الهامة هي الحصول على الكلمة حيث المؤشر ..

أغلب البرامج التي تقرأ النص تحت المؤشر - التي أعرفها - تعتمد على API Hook وبعضها على OCR ...

كنت ذكرت ذلك في مواضيع سابقة وكان كلامي مبني على أمثلة ومواضيع تتحدث عن نفس المشكلة وأيضاًُ عن تجربة في تنقيح برامج جاهزة واتضح لي أنها تستعمل API Hook ... وكانت المشكلة الكبرى التي واجهتني هي الحصول على النصوص باللغة العربية ومثيلاتها (العبرية , التايلاندية ..) , ويبدو أن هذه المشكلة محلولة بإستخدام MSAA وتبقى مشكلة الحصول على "الكلمة" ..

لي عودة للموضوع إن شاء الله ..

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#18

شكراً جزيلاً

كنت عملت Import Type Library لـ OLEACC.DLL و بذلك كان بالإمكان تحويل الكود الموجود في The New Old Thing ...

المثال قادر على الحصول على النص من notepad لكنه ما زال غير قادر على الحصول على النص من Opera والناتج

Vide False ...

لا أعلم إن كانت التقنية لا تعمل مع بعض البرامج (ربما تلك التي لا تستعمل standard control )

سأبدأ في محاولة حل مشكلة الحصول على الكلمة تحت المؤشر إن لم أنشغل بالعمل ...

تم تعديل هذه المشاركة بواسطة cipher في 4 أبريل 2007 في 20:40

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#19

لاتستعمل Import Type Library لـ OLEACC.DLL

لانها لن تعمل معك

تحتاج تغيرها يدوي.

انا عندي oleacc.pas مع Delphi10

ومذكور فيه ان اوتو ايمبورت لن يعمل ويحتاج تغير يدوي.

اما المثال الموجود فمعه oleacc.pas جاهز

طبعا ليس كل البرامج تدعم acc (الان ) ولكنها سوف تكون مستقبلا لانها سوف تصبح معيار. (هي صممت لمعاقين بالاساس حتى البرامج تحول الكتابة الى كلام speech)>

وشكرا

#20

تقنية رائعة فعلاً, قمت بتحميل الملف لكي ادرسه فيما بعد

اقتباس
لكنه ما زال غير قادر على الحصول على النص من Opera

ليس اوبيرا فقط بل كل المتصفحات لايستطيع الحصول على اي شيئ منها

اقتباس
سأبدأ في محاولة حل مشكلة الحصول على الكلمة تحت المؤشر إن لم أنشغل بالعمل ...

اولا يجب ان نحصل على اول سطر معروض على الشاشة, بعد ذلك علينا الحصول على معرفات الخط و من ثم معرفة موقع الماوس بالنسبة لل Object

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#21

الاخ وائل

انا اطلعت على ان الاكسيبلورر يدعم acc

وكذالك اطلعت على مثال كيف استخدامه مع الاكسيبلورر لا يحضرني اين ولكنه موجود بالنت.

نسيت ان اذكر شىء. ماكروسوفت تستخدماها في بعض برامجها التى تقراء. للذالك اعتقد هناك طريقة كيف نستطيع استخلاص الكلمة من النص من موقع ما.

وشكرا

تم تعديل هذه المشاركة بواسطة pc.2058 في 4 أبريل 2007 في 23:37

هذا الموضوع مغلق.

مواضيع مشابهة