I have a ScrollPanel in which
I have a FlexTable with two columns and a dynamic number of rows.
The first column only contains Labels, the second various widgets.
Some of those widgets in the second column are manually layed out triggered by a ResizeEvent.
When one of those manually resizing widget is present, and the browserwindow gets resized to a smaller size, then vertical scrollbars will apear and allow to scroll the area in the size that was previously present. When I resize a second time then the width of the first resize-step will be the new minimum size that the ScrollPanel will represent.
This problem only exists for firefox and chrome, IE does work as expected.
I tried to manually call my resize procedure twice with the same ResizeEvent but that doesn't help. I also tried to fire the ResizeEvent on the ScrollPanel after my widgets have completed their manual resize procedure, also had no effect on this problem.
I cannot disable the vertical scrollbar completly. Some of the widgets have a minimal width, and if the browser gets smaller then the biggest minimal width + the width of the label column than the scrollbar is necessary.
Related
On iOS by default if you add the button in SwiftUI its size is equal to the size of the text. Setting the padding to some value expands the size to be bigger than the text by that value.
On watchOS by default the button has the text and background with applied padding. I don't see any way to reduce that padding (to make the button height closer to the height of the text). I have tried with setting padding and frame but it doesn't appear to be helpful - it appears even counter intuitive as increasing the padding reduces the height of the visible button but it keeps the overall size of the button in the layout which still isn't helpful.
Just to note that with storyboards this reduction of height is possible so I would assume that there should be a way in SwiftUI.
Set the button’s buttonStyle(:) to PlainButtonStyle() and you’ll have full control over the padding and frame. The downside is that you no longer get the default button background, so you’ll need to recreate it if you need it.
I want to make Gridster grid responsive according to grid resize as well as window resize. Currently I am using DC.js to render charts inside the gridster grid, but if the screen resolution changes from bigger to smaller , the value of the item stored previously for the width for svg remain too big for the screen.
Any tips how to make it responsive. How to set the width of gridster item , it looks to me it injected through java-script.
I found out the answer. Angular Gridster have a event "gridster-resized" , whenever this event happens try to resize the items in the gridster.
I have a function which automatically resize every control according to the screen size. I tried to resize the MSFlexgrid its working but problem is columns are not resizing according automatically with it is there any function so that columns width automatically resized with it?
No, there's no built in auto-column scaling for MSFlexGrid. You'll have to write one yourself.
Thankfully it's fairly straightforward, although don't forget to allow for scroll bars.
I want to set the content view of a scrollview to whatever the current screen size is, but AutoLayout is doing some funky stuff. This is trivial in code... just create a scrollview with a frame that is the superview's bounds. Then create a content view with the scrollview bounds and populate it and set the alwaysBounces... properties to YES. In interface builder though, this is some kind of sinful thing it seems.
I know Autolayout handles scrollviews totally differently because it wants to infer the content size based on constraints. My approach that failed is setting the scrollview to have 0 distance to its superview (all sides attached). Then, the same with the content view (the single scrollView subview)- attached to all superview edges. Then the precompiler thing complains about not knowing the content size, so I set a width and height constraint at placeholder to be removed at build time. But the result is a (CGRect){0,0,0,0} contentView. The 0 space to trailing edge and bottom of superview are totally ignored.
So how can I make a scrollview with a dynamic content size based on the screen size?
Bonus points if you can explain how you would do the same, but for a content size of 2x screen width.
You can try setting a constraint for the content view's width to equal the scroll view's width (for your bonus question: with a multiplier of 2). Same for height.
Not sure what the point of having a scroll view whose content is always the size of the scroll view is. By definition it wouldn't scroll, right?
I have a TForm object whose height is greater than the required vertical resolution of my screen.
For some reason, Windows doesn't allow the visible (client?) area of the form to exceed the screen resolution, so vertical scrollbars appear on my form.
How would I get a TBitmap image or screenshot of the entire form (no scrollbars, all form components visible) so that all content of the form is visible?
At first you have to make sure the form has no scrollbars. For that you can write an event handler for FormConstrainedResize and adjust MaxWidth and MaxHeight to your needs. If the form size is restricted during design, set the required Width and Height in the FormCreate event to the desired values.
Now you can use GetFormImage to get the screenshot.