How to align text to TOP in a tkinter Entry widget - python-3.x

I want for the text in my entry widget to start appearing at the top as if it was top justified. With tkinter.Entry's justify option you can justify the text to the left, right or center, but not top or bottom. Specifically, I would like to have an option to do the function of the highlighted button below in google docs.

An entry widget only accepts a single line of text. There is no concept of vertical alignment in an Entry widget.
The Text widget supports multiple lines, but it also doesn't have any support for vertical alignment.

Related

How to make a vertical slider?

I need a vertical slider similar the standard slider. Is there a way to modify the existing one or do I need to make a new one?
The standard slider would work for me. I just need it to work vertically.
Perhaps I should better clarify my issue with the standard slider.
Yes, I can drag the size of the slider and it will be vertical. The problem is that when you select the value of the slider to show the text gets buried in the low side of the slider when you slide it down all the way. It essentially gets cut off and only shows the top half of the slider value character. I find no way to correct this by moving the shown text up a little so it all shows. I see no way to change text vertical or offset position in the properties setting.
The text settings only allow you to change the text format to right, center and left justify. There is no setting that can move the text up to prevent it from being cut off when the slider is all the way to the lower or down position.
The value text shows ok on the top of the slider. The problem is on the bottom side when you set the slider to be vertical.
It looks like the the show value setting does not place the value on the top layer of the slider and it gets hidden behind something else in the slider object.
LC9, Windows 10
I think I'm understanding your question. If you just resize the horizontal slider control so that the width is narrower than the height, the orientation of the slider control will automatically change to vertical.
Apparently it is a bug in this version of LC. At least in Win which is where I am testing.
Putting the scrollbar vertically cuts the value when it reaches the bottom.
But I found a solution so that it does not cut. Play around with the properties of the font. Such as size and family. In my case it worked fine by lowering the font size by one pixel.
Default: Segoe UI font, size 12
I just set the size to 11 and it doesn't cut anymore.
For what it is worth, I do not see this issue on a Mac. A vertical slider works as advertised. Font size makes no difference.
Are you saying that in the horizontal mode, you do not see this, but when changed to vertical, you do?
Try creating a scrollbar and a text field.
Set the scrollbar's showValue property to false and copy the following script to your scrollbar. Note that your field must be called "scroll value".
on scrollbarDrag pNewPosition
local tLoc
lock screen
# The Current Loc of Field
put the loc of field "scroll value" into tLoc
# New Position of scrollbar
put pNewPosition into field "scroll value"
# New Loc of Field
put the mouseV into the item 2 of tLoc
set the loc of field "scroll value" to tLoc
set the left of field "scroll value" to the right of me
unlock screen
end scrollbarDrag

How to align the button horizontally and vertically in Document?

I want to align the button horizontally and vertically in Document, i now ho to align horizontally, but i can`t undestand how to align vertically?
In picture bellow, button align horizontal, but how align vertically, in option button i don`t find something about align vertically.
Vertical align is possible in tables only.
Create a table with one row and one column. Set wanted height as "Minimum height" and "Vertically align" to "Center". Content will be centered vertically this way.
I know, it is just a workaround, but it works. Of course, set "Cell Border Thickness" all to 0 so table border is invisible.
If those are 2 buttons, why don’t you just put a ‘return’ (CR) between them. The 2 buttons will be positioned one below the other.
If need be, you can size the buttons, so they have the same width via the properties.
There is no option to "fit to window" vertically in normaal Notes form and document display. It assumes an infinitely long document consisting of paragraphs.
There is, however, the option of displaying a document using the #DialogBox formula or the NotesUIWorkpace.DialogBox method. Both of those have an auto vertical fit argument that you can provide. This will likely require you to redesign your application a bit, but I think it's the only way to do what you want.

Motif: How to move Scroll Bar automatically without user intervention

I have a scrolled window in my application, in which I have created a drawing area widget. In the drawing area, I have placed multiple images. When the user enters information about an image in a search box, the appropriate image gets highlighted.
My problem is how do I get the application to scroll automatically to the highlighted Image box without the user using the scroll bar. The scrolledwindow should automatically move the view region, to display the region where the highlighted Image is present.
The scrolling policy used on the scrolled window is XmAUTOMATIC.
Any pointers would be greatly appreciated.Thanks in advance.
Try XmScrollVisible() if this does not work then you will need to:
1. Find out the size of the work area.
2. Find out the size and position of the clip window.
3. Find out the max/ min values for the horizontal scrollbar.
4. Use XmScrollBarGetValues() for the horizontal scrollbar to get its position within the max/min values.
5. Do some math magic to determine how much to move the horizontal scrollbar to get the work area to show through the clip window.
6. Call XmScrollBarSetValues() with Notify = True.
7. Repeat for the Vertical scrollbar.
HTH

How to vertically align the text in static text box in PowerBuilder?

How to vertically align the text in static text box in PowerBuilder like the following picture? It can be aligned horizontally to left, center, right. But cannot do the same thing vertically.
Thanks
As far as I know, it cannot be done out of the box.
I have made it anyway "by hand" with the help of the windows API: DrawText(), OffsetRect() and so on to create an improved rounded command button.
You can look at the code in that gist (look at the of_drawtext() method).
Can you explain the purpose of this text box?
Maybe you could use another object where you can easily move your text within.
The text in the box may have a variable number of line?
Do you use sql on the window object?
Maybe put this text between line feed in compute field within the datawindow you used can help you.(Handy Manny's style.....i agree....).
Erf....Seki answered faster
You can use a DW to vertically align a text.
An attribute of the dw static text called "font.escapement" sets the angle at which you want your text displayed.
To display text vertically, set the escapement attribute to 900 (10 * the angle) or to 2700.
Please notice that you will not see the effect in the datawindow painter, you'll have to preview your dw to see if the text is in the correct angle.

How to make Label's text centered vertically?

I tried one by one each of these methods : setting the BgAlign property to CENTER in the Resource Editor , myLabel.getStyle().setBackgroundAlignment(Style.BACKGROUND_IMAGE_ALIGN_CENTER); but the text of the Label is not centered vertically.
So how to make Label's text centered vertically ?
The following image shows the actual alignement of the Label's text :
Label vertical alignment is unsupported only its positioning in relation to an icon.
As far as I recall you are using FlowLayout for every entry which does support vertical alignment see FlowLayout.setValign(Component.CENTER).

Resources