Sign in to follow this  
Lalalu

GUI Resolution

Recommended Posts

Holaaaaaaaaaaaaa, quisiera saber que debo hacer para adaptar un GUI, imagen, texto, de forma que se vea bien en todas las resoluciones :/ 

        dxDrawImage(x * 717, y * 101, x * 380, y * 80, "images/main.png", 0, 0, 0, tocolor(255, 255, 255, 255), false)

 

Edited by Lalalu

Share this post


Link to post

Yo utilizo lo siguiente:

local sx, sy = guiGetScreenSize()
local tuX, tuY = 1024, 768 -- La resolucion con la que estas ahora mismo o con la que haces la gui 
local x, y = (sx/tuX), (sy/tuY)

-- Y luego pues solo haces esto (te dejo un ejemplo de una ventana centrada y otra normal) 

-- Ventana centrada
local w, h = 500, 400
dxDrawRectangle( ( sx - x*w )/2, ( sy - y*w )/2, x*w, y*h )

-- Ventana normal
dxDrawRectangle( x*20, y*300, x*200, y*350 )

Me ha funcionado de lujo por el momento así que para mí es el método más fácil de entender y más efectivo. Además, no tendrás problemas con el isMouseInPosition como yo lo pensaba al principio.

He hecho gridList dx con ésto y lo mismo, ningún problema.

Suerte!

  • Thanks 1

Share this post


Link to post

HI you can use

screenW, screenH = guiGetScreenSize()
sWidth, sHeight = guiGetScreenSize()
local resolutionX = 1280 --La resolucion con la que estas ahora mismo o con la que haces la gui
local resolutionY = 960 -- La resolucion con la que estas ahora mismo o con la que haces la gui
_dxDrawRectangle = dxDrawRectangle
_dxDrawText = dxDrawText
_dxDrawLine = dxDrawLine
_dxDrawImage = dxDrawImage

function dxDrawText( text,posX,posY,right,bottom,color,scale,mixed_font,alignX,alignY,clip,wordBreak,postGUI,kk,gg )
	return _dxDrawText(tostring( text ), ( posX/resolutionX )*sWidth, ( posY/resolutionY )*sHeight, ( right/resolutionX )*sWidth, ( bottom/resolutionY)*sHeight, color, ( sWidth/resolutionX )*scale, mixed_font, alignX, alignY, clip, wordBreak, postGUI, kk, gg)
end
function dxDrawRectangle( posX, posY, width, height,color,postGUI )
    return _dxDrawRectangle(( posX/resolutionX )*sWidth, ( posY/resolutionY )*sHeight, ( width/resolutionX )*sWidth, ( height/resolutionY )*sHeight, color, postGUI)
end
function dxDrawImage( posX, posY, width, height, filename, rotation, r2, r3, color,postGUI )
    return _dxDrawImage(( posX/resolutionX )*sWidth,( posY/resolutionY )*sHeight,( width/resolutionX )*sWidth,( height/resolutionY )*sHeight, filename, rotation, r2, r3, color, postGUI)
end
function dxDrawLine( posX, posY, width, height,color, size, postGUI )
    return _dxDrawLine(( posX/resolutionX )*sWidth, ( posY/resolutionY )*sHeight, ( width/resolutionX )*sWidth, ( height/resolutionY )*sHeight, color, size, postGUI)
end

 

  • Thanks 1

Share this post


Link to post
34 minutes ago, Lalalu said:

Gracias. ¿Puede funcionar con guiCreateStaticImage?

Sí. Debería. Lo he utilizado con scrolls y funciona, también con edits y memos.

  • Thanks 1

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.