Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Does jukebox software allow for resizing of the display? Please test for me  (Read 4365 times)

0 Members and 1 Guest are viewing this topic.

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:March 17, 2025, 11:51:15 am
I am trying to figure out whether most of the jukebox software mentioned around here allow the user to resize the jukebox application window or does the software simply come up fullscreen only (ie: no resizing)?  Perhaps the software comes up in a window but can not be resized, but can toggle to "fullscreen" and back to the original windowed size only?

I do not want to install a lot of jukebox software to figure this out for myself, so perhaps people who have jukebox software installed can help me figure this out.

I am not trying to figure out which jukebox software to use, because I already have my own that I wrote a while back.  However, I am currently updating my software with a bunch of new stuff and I am having trouble in one area when it comes to resizing the application.  I am thinking about removing the "resizing" aspect currently allowed by my software and was wondering what other software currently does before I make this decision.

Thanks for the help
« Last Edit: January 27, 2007, 06:37:26 pm by unclet »

headkaze

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2943
  • Last login:August 14, 2023, 02:00:48 am
  • 0x2b|~0x2b?
Why not describe the actual issue your having with resizing your application and perhaps I can help give you advice on fixing it.

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
I only software I have seen using autoresizing is SK-Jukebox.

All other used scaling or fixed resoulutions, when I checked these software last year on the wiki.
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:March 17, 2025, 11:51:15 am
Space Fractal
Does "Fixed Resolutions" mean that the application comes up and can not be resized at all?  Also, what do you mean by "scaled" resolutions? 

headkaze
Well, I am using a transparent frame control in Visual Basic which basically gets the background image from the parent Form and uses it on the frame.   This provides the effect of being able to see the background image (main skin image) under all of the VB controls in my project.  Thing is, if the size of the screen changes, then the transparency must be recalculated.    I am wondering whether the time it takes to do this calculation is worth it or not since it would need to occur when the "Resize" event occurs .... which could many many many times in a row due to the user resizing the application window.

Anyway, I guess I am trying to figure out whether the jukebox software applications out there allow for the resizing of the background skin image or not?    Perhaps the jukebox software which offers "resizing" simply resizes the screen but does not rezize the background image as well.

Just trying to figure out if it is worth my time and effort to make sure the images are all maintained correctly during resizing events.  IF most people do not actual resize their jukebox software application or if most applications do not offer resizing at all, then I might spend my time on other things I want to do .....

I am just curious really ...... no real problem ....
« Last Edit: January 27, 2007, 07:11:17 pm by unclet »

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
Scaled Image:
Some applications used examples 1024x768 as it internal resoulutons when drawing its graphics on a outside image. Then it downscaling to a backbuffer on the graphicscard, and "flip" it to the user.

This take no time by the cpu, since it downscaling was done by graphicscard.

If you do that with cpu only, it take a lots longer time.. so long time, you may not can done it realtime. Your calculations should only done once per resize and not realtime.

Fixed Resulutions:
They can not resize at all when first they are on use. But these named apps can use skinning in any resoulutions. The big downside is, it requre the user done by yourself with skinning.


Since apps is create very diffecent ways, it depend how it was created, you may want auto resize. Sometimes it works, sometimes not (I gave up when I tried to do the same in my next app, since it diddent work.).
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

headkaze

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2943
  • Last login:August 14, 2023, 02:00:48 am
  • 0x2b|~0x2b?
A transparent frame control just means it draws a border without filling it in right? So I can't imagine there being alot of redrawing going on. Unless your talking about an alpha transparent control, then there will be calculations involved. Why not give it a go and see, just have the image auto-size or bitblt to the forms background the size of the form on a resize event. Don't even worry about calculating the positions of all your controls again (which by the way isn't that hard).

For resizing all your form's controls, you can use a simple loop:

Code: [Select]
Dim OldWidth As Integer
Dim OldHeight As Integer

Private Sub Form_Load()
    OldWidth = Me.ScaleWidth
    OldHeight = Me.ScaleHeight
End Sub

Private Sub Form_Resize()
    Dim Control As Control
    For Each Control In Me
        Control.Left = (Me.ScaleWidth / OldWidth) * Control.Left
        Control.Top = (Me.ScaleHeight / OldHeight) * Control.Top
        Control.Width = (Me.ScaleWidth / OldWidth) * Control.Width
        Control.Height = (Me.ScaleHeight / OldHeight) * Control.Height
    Next Control
    
    OldWidth = Me.ScaleWidth
    OldHeight = Me.ScaleHeight
End Sub



unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:March 17, 2025, 11:51:15 am
The transparent frame I am talking about looks like a true Windows VB frame control but draws the background image of the main form onto the frame.

I already am using a Resize OCX to move all my controls ... so that is no problem. 

headkaze

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2943
  • Last login:August 14, 2023, 02:00:48 am
  • 0x2b|~0x2b?
Best way to find out is to give it a try. I don't think it will be slow at all. The frame control is either transparent (meaning nothing is drawn) or like you say, the graphic below it from the parent control is blitted on it's background. Either way it should be more than fast enough to keep up with a resize event. I think it's nice to have applications that can minimize, go fullscreen and be windowed.

Barry Barcrest

  • I'm only in it for the lack of money
  • Trade Count: (+2)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1620
  • Last login:November 09, 2021, 09:54:17 am
  • Simple Plan
    • E-Touch Jukebox
The transparent frame I am talking about looks like a true Windows VB frame control but draws the background image of the main form onto the frame.

I already am using a Resize OCX to move all my controls ... so that is no problem. 


I know SK can res-ze on the fly but it has no real skin support so it's easier to do... I thought VMJ also scaled on the fly as well.. Everything else seems to have a set resolution depending on the skin (Where supported).

What resize OCX are you using, everytime i tried to do it the form went screwy after shrinking and enlarging a few times so i dropped that option and set the screen size via the skin.

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
I may think VMJ use some of the same scremes like Winamp does?
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

headkaze

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 2943
  • Last login:August 14, 2023, 02:00:48 am
  • 0x2b|~0x2b?
What resize OCX are you using, everytime i tried to do it the form went screwy after shrinking and enlarging a few times so i dropped that option and set the screen size via the skin.

Yeah I can see that happening, since you are constantly losing precision if your calculating the ratio over and over again. The best way to do it is create arrays that store the width and height ratio of each control at Form_Load() then always use that same ratio to resize and relocate the control.

Barry Barcrest

  • I'm only in it for the lack of money
  • Trade Count: (+2)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1620
  • Last login:November 09, 2021, 09:54:17 am
  • Simple Plan
    • E-Touch Jukebox
What resize OCX are you using, everytime i tried to do it the form went screwy after shrinking and enlarging a few times so i dropped that option and set the screen size via the skin.

Yeah I can see that happening, since you are constantly losing precision if your calculating the ratio over and over again. The best way to do it is create arrays that store the width and height ratio of each control at Form_Load() then always use that same ratio to resize and relocate the control.

Indeed, i like it... I don't know why i didn't think of this, i might take a look and see how i get on.

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:March 17, 2025, 11:51:15 am
Barcrest, headkaze:

Send me an email and I will send you the resizer stuff whn I get home tonight .   I actually think it is a "user control" instead of an OCX.   Works like a charm.   You just drop it on your Form and then whenever a control moves position on the Form, you simply call the Refresh method of the user control.   It keeps track of everything for you.  Very easy.   I use it in all of my applications.  I forget where I originally found it, but I do know that it is freeware, so no worries there.

I am at work now, so can not take a look until later tonight ...

emailAddrRemoved

headkaze:
Meant to mention earlier that the transparent frames I am using are true frame controls since they still act as a container object to place controls on.  It just has the ability to paint the background of the frame with the main form's image.  I am still trying to get them to work how I would like them to.   I am getting closer .....



« Last Edit: February 22, 2008, 09:44:34 am by unclet »

Barry Barcrest

  • I'm only in it for the lack of money
  • Trade Count: (+2)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1620
  • Last login:November 09, 2021, 09:54:17 am
  • Simple Plan
    • E-Touch Jukebox
Mail sent... Uncle i just use picture boxes... sounds like you have something cooler.

EDIT MAil bounced...
« Last Edit: January 29, 2007, 07:22:12 pm by Barcrest »

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:March 17, 2025, 11:51:15 am
I do not understand .... you use PictureBoxes?..... for resizing?

I tried to be fancy with listing my email ..... try this one:

emailAddrRemoved
« Last Edit: February 22, 2008, 09:44:55 am by unclet »

Barry Barcrest

  • I'm only in it for the lack of money
  • Trade Count: (+2)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1620
  • Last login:November 09, 2021, 09:54:17 am
  • Simple Plan
    • E-Touch Jukebox
I ment instead of frames i use picture boxes to hold everything. That way i can just paint the background onto thoose. That transparent frame you use does it paint onto the controls conatined inside it too? Otherwise you too might be better off using a picture box and just painting the image off the form from behind the picture box to the picture box. I don't really know what would work better in terms of speed...

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:March 17, 2025, 11:51:15 am
The transparent frame paints the image behind the controls which are currently on the frame.   Any windowless objects (labels, image control, lines, shapes, etc...) located behind this transparent frame) will also be part of the image which is painted onto the transparent frame.    Windowed objects such as buttons, listboxes, etc..... will not be affected by the painting of the transparent image onto the frame's background.

I guess I originally used the traditional VB frame objects when I first started playing around with VB and since I wanted to have the borders visible.  After these frames were used extensively in my app, I realized I should have used a PictureBox instead and simply drawn the frames around them if I wanted them.   Oh well.  Actually, there is an OCX(?) I have (but have not used yet) which will draw a border (like a frame border) around any object for you.   Kind of neat .... but I never used it.

I am at work now so I will send you the resize user control when I get home .... if you emailed me a second time.   If you can not email me for some reason, then just send me your email address in a PM here if you want .....