View Full Version : سوال مبتدی (در حیطه ی گرافیک در پاسکال)
aghooshebahar
پنج شنبه 23 خرداد 1392, 03:19 صبح
سلام و عرض خسته نباشید...
اگه در سطروستونی در صفحه ی نمایشگر یک کاراکترچاپ شده باشد
آیا تابعی هست که مختصاتش را به ما بده یا نه؟
ممنون
یوسف زالی
پنج شنبه 23 خرداد 1392, 12:30 عصر
سلام.
شما نمی تونی بگی در کجا کاراکتر فلان وجود داره، اما می تونی بگی در یک جای خاص چی وجود داره.
اگر واقعا به کاری که می گید نیاز دارید باید تمام صفحه نمایش رو پیمایش کنید.
aghooshebahar
پنج شنبه 23 خرداد 1392, 13:53 عصر
سلام.
شما نمی تونی بگی در کجا کاراکتر فلان وجود داره، اما می تونی بگی در یک جای خاص چی وجود داره.
اگر واقعا به کاری که می گید نیاز دارید باید تمام صفحه نمایش رو پیمایش کنید.
مثلا میخوام ببینم دریه مختصات خاص یه ستاره چاپ شده یا نه...
ممنون از کمکها وراهنماییهات
یوسف زالی
پنج شنبه 23 خرداد 1392, 14:32 عصر
ممنون از کمکها وراهنماییهات
اگر دوست داشتی تشکر کنی از کسی دکمه رو بزن.
خب، شما مختصات رو داری. در مود گرافیک هم نیستی (دو تا مود اصلی داریم، از اونجا که از کاراکتر صحبت می شه، حدس می زنم در مود عادی باشید) بنا بر این با داشتن اون مختصات می تونی از روش زیر استفاده کنی:
در پاسکال محتویات صفحه نمایش در آدرس B800 Hex از حافظه قرار داره. پس اگر بتونی اونجا رو بخونی در حقیقت داری صفحه نمایش رو می خونی.
نمونه برنامه زیر این موضوع رو نشون می ده:
uses CRT;
type
ScreenType = array [1..80, 1..25] of record
Char: char;
AtPos: byte
end;
var
Screen: ScreenType absolute $B800:0;
i: integer;
S: string;
begin
S := '';
for i := 1 to 80 do
S := S + Screen[1, i].Char;
gotoxy(1, 10);
write(S);
readkey;
end.
همون طور که می بینی داریم خط اول رو می خونیم و نمایشش می دیم.
موفق باشید.
Iman Mahkami
جمعه 23 خرداد 1393, 19:12 عصر
ََََََََََََََََ
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.