I don't really understand, do you have a problem with the dxDrawText ? Can you take a screenshot and show us what the problem is please ?
I just want to point out that it looks like you want to make a password field. For this, you should use guiCreateEdit instead (there is also a method for edit to not show the password when writing in it: guiEditSetMasked). Memo are for multiline texts. But anyway, it won't fix your problem.
Your problem is that you are giving a relative size (width and height) that is too small for it to work on small screen: 0.10 and 0.03
- on a 1920x1080 screen: it means 0.10 x 1920 = 192 pixels(px) of width (that's okay) and 0.03 x 1080 = 32.4px of height which is okay too, but
- on a 1280×720 screen: it means 0.10 x 1280 = 128px width but 0.03 x 720 = 21.6px of height which is not okay because it's too small. Memo or Edit have some inner margin that you can't override so the text doesn't have enough space to show.
To fix that one quick solution you can try is to make sure the height doesn't go under a minimum height by using math.max :
guiCreateMemo(0.45*screenW, 0.42*screenH, 0.10*screenW, math.max(0.03*screenH, 30), "", false) -- back to false (absolute)
I put 30 px as minimum but you can change it a bit (I don't know what the real minimum is for the text to show properly).
NOTE:
If it is part of a window (guiCreateWindow) then you have to instead to make it relative to the window (and not the entire screen) by setting the gui window as its parent:
local window = guiCreateWindow(0.36, 0.27, 0.35, 0.34,"GUI Window", true)
guiCreateMemo(0.45, 0.42, 0.10, 0.03, "", true, window) -- you have to rework the values here
For more understanding, please consider reading this guide: https://wiki.multitheftauto.com/wiki/Introduction_to_Scripting_the_GUI