PDA

View Full Version : VBA program look and feel



Coolmo
2008-02-15, 04:01 PM
I'm just curious. Does everyone use the standard buttons and stuff given to us by AutoCAD or do they create their own controls and/or use images as buttons? My main question is what does everyone's programs look like? I personally use images and such for my buttons and keep my programs "floating" on the screen like little task panes. Post some pics of your dialog boxes (if that's OK), I'd love to see 'em (and get some ideas)

Thanks for playing

Coolmo
2008-02-22, 06:51 PM
No takers huh?

Ed Jobe
2008-02-22, 09:18 PM
I use the stock stuff. I think its more important to have the controls well organized and user friendly.

Coolmo
2008-04-29, 06:28 PM
Here's the main program that I have that also launches a ton of other programs. The "closed" version acts like a tool palette for inserting blocks but does a ton more stuff with respect to layer, size, scales, etc. It also has a toggle to insert a piece of common MTEXT associated with the selected block. The expanded version shows all the options for the window and how it acts when being used. It also has an area to bring up CAD Standard web pages and launch all the other little programs I have that have the same look and feel.

Dave F.
2008-05-04, 01:46 PM
Hi

Personally I agree with Ed.
Stock maybe a bit bland, but consistency is important.

What really annoys me is programmers working under Windows, who refuse to use the standard toolbar icons which, correct me if I'm wrong, are supplied by Microsoft.

SpellChecker & Undo/Redo appear to be the worst culprits. In every image/pdf viewer I've used, the Undo/Redo are similar to their rotate Left/Right icons. :-(

AFAIC, if it isn't broke, don't waste time 'fixing it' & why reinvent the wheel?

Coolmo
2008-05-05, 01:45 PM
I wouldn't say it was broke but YES, it is definitely BLAND. With as many things I have my programs doing, visually, a sea of blah buttons with simple descriptions would be near impossible to find and click quickly. You'd be reading commands all day trying to figure out what you wanted to click on.

The way I see it is we, as programmers, have the ability to build on and improve the way our store bought programs work with new tools and abilities through VBA. Why stop at the code level? If you can make your programs visually interesting and easier to understand through pictures then why not? Nothing would ever change if everyone kept using "out of the box". Imagine what the internet would look like without people coming up with new visuals and internet languages.

A perfect example is the smilie. Why did we HAVE to change the typed out charactors for a smilie to this :)? Because the first one is bland. Just my opinion.

Ed Jobe
2008-05-05, 02:29 PM
With as many things I have my programs doing, visually, a sea of blah buttons with simple descriptions would be near impossible to find and click quickly. You'd be reading commands all day trying to figure out what you wanted to click on.

Complexity is definitely part of the mix. When you asked about "vba", I took that to mean just within acad. So far at my place of work, I've been able to keep the complexity down by the use of program design so that my dialogs don't have too much going on. I have one that doesn't have any user interation at all, page setups. I have separated the process into two commands. The first configures options. The other just does the import from template, just click on the toolbar button and that's it. On the other hand, I can see that your design seems to be well thought out for your line of work. I might have done it a little differently. Pallettes are useful, but I still don't like them docked. All mine are set to autohide. If I'm using it heavily for a period, then I'll turn off autohide. So with your dialog I probably would use radio buttons or tabs to select a group of block to view just to minimize how much screen space they use.

Related to that, I just found out that Visual Studio 2008 will allow .NET assemblies to be callable from or exposed to vba. That means for those of you like me whose company won't let non-IT personell have access to Visual Studio, you could design your own dialogs, etc. at home and use them at work via vba. It also signals that vba isn't going away any time soon.

Coolmo
2008-05-05, 08:29 PM
Tool palettes are cool but you can't do much with them (that I've found) dealing with programing. Sure you can add a ton of blocks from different layers and situations but nothing beats designing your own "Insert" program that allows users to add prefixes to Standard layers, set different Standard layers on the fly before insert, control the color, etc.

I've also added common mtext objects with two text content options for each given piece of linework or block selected. This inserts into paper space the common "company" label that we want to see on our plans for each block.

You mentioned minimizing. I've set the dialog up so it stays on the screen but I've also included a small minimize button at the bottom that shrinks the dialog box's height down so that you only see a tiny portion of the field (see attachment). When the user hovers (or clicks as an option) over the field it returns back to normal. I've also set it up as an option to minimize the box automatically when the block is inserted or some other operation is performed.

So can you add programming to tool palettes?

Ed Jobe
2008-05-05, 09:00 PM
That works. Related to your image, if you upload a png or jpg the files size is smaller and it opens in the browser without extra prompts. As far as programming tool pallettes, they are supported in the .NET api.

Coolmo
2008-05-05, 09:05 PM
thanks for the image tip. I just saved them from "paint" and didn't even consider file type.:Oops:

Ed Jobe
2008-05-06, 02:48 PM
No problem..:-)