PDA

View Full Version : ااشکال در رسم 2 تا عکس بر روی هم !!!



mahdi68
شنبه 30 آبان 1388, 23:40 عصر
سلام
من میخوام دو تا عکس رو هم رسم کنم برای این کار x, y آنها یکی در نظر میگیرم
g.drawImage(img1,getWidth()/2,getHeigth()/2-50,3)
g.drawImage(img2,getWidth()/2,x,3)
که متغییر x هم از نوع int و برابر getHeight()/2-50
ولی وقتی برنامه رو اجرا میکنم img 2 خیلی بالاتر از img1 رسم میشه یعنی با 35 تا اختلاف !!!
برای اینکه رو هم بیوفتن باید x=getHeigth()/2-15 باشه!!!
اگه به جای x مستقیما مقدار بنویسم درست رس میشه !!!
من که سر در نیاوردن به نظر شما چرا اینجوری میشه ؟؟؟
متشکرم
_______

mic_r_c
پنج شنبه 05 آذر 1388, 07:12 صبح
سلام
این مشکل به خاطر آخرین پارامتر، یا همون Anchor است.

Anchor اولی رو Graphics.LEFT | Graphics.TOP بذار، برای دومی هم بذار Graphics.BOTTOM|Graphics.RIGHT

البته باز هم بهت قول نمیدم کاملا درست بشه!

درضمن مطمئنی که x رو به اندازه یه getHeigth()/2-50 میذاری!

یه مورد دیگه، اگر از عکس img1 به عنوان Background استفاده میکنی:
1- عکس رو همه صفحه بنداز
2- از layerManager یا tiledLayer استفاده کن.

mohsen12345
دوشنبه 25 مرداد 1389, 18:29 عصر
سلام
من میخوام دو تا عکس رو هم رسم کنم برای این کار x, y آنها یکی در نظر میگیرم
g.drawImage(img1,getWidth()/2,getHeigth()/2-50,3)
g.drawImage(img2,getWidth()/2,x,3)
که متغییر x هم از نوع int و برابر getHeight()/2-50
ولی وقتی برنامه رو اجرا میکنم img 2 خیلی بالاتر از img1 رسم میشه یعنی با 35 تا اختلاف !!!
برای اینکه رو هم بیوفتن باید x=getHeigth()/2-15 باشه!!!
اگه به جای x مستقیما مقدار بنویسم درست رس میشه !!!
من که سر در نیاوردن به نظر شما چرا اینجوری میشه ؟؟؟
متشکرم
_______
شما مطمین هستی که X رو جای دیگه مقدارش رو عوض نمی کنی؟