Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Java programming

Posted on 2014-01-01
11
Medium Priority
?
283 Views
Last Modified: 2014-01-03
Below are a couple of lines of code I would like to use to change the existing title on a label.  It works fine except I would like to be able to control the font size on the title and don't know what to add.  The color. bold, and title value work fine.
0
Comment
Question by:sargent240
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
  • 3
  • +1
11 Comments
 

Author Comment

by:sargent240
ID: 39750074
Sorry I missed the lines of code.  They are below.

    Border teamBorder = BorderFactory.createLineBorder(Color.red, Font.BOLD);
    jLabel_visitorsScore.setBorder(BorderFactory.createTitledBorder(teamBorder,    arguments[1]));
0
 
LVL 26

Expert Comment

by:ksivananth
ID: 39750713
try this,

TitledBorder titledBorder = BorderFactory.createTitledBorder(teamBorder,    arguments[1]) ;
titledBorder.setFont( new Font( "Verdana", Font.BOLD, 12 ) )
0
 
LVL 26

Expert Comment

by:ksivananth
ID: 39750714
and ofcourse you need toi set the border to the label,

jLabel_visitorsScore.setBorder( titledBorder  ) ;
0
Build and deliver software with DevOps

A digital transformation requires faster time to market, shorter software development lifecycles, and the ability to adapt rapidly to changing customer demands. DevOps provides the solution.

 
LVL 36

Accepted Solution

by:
mccarl earned 2000 total points
ID: 39750715
The color. bold, and title value work fine.
Firstly, the bold part of that code CAN'T be working fine, because the second parameter to .createLineBorder() is actually the border thickness. It is only because Font.BOLD is an "int" constant and the thickness of the border is specified as an "int", that allows this code still to compile.

So to do all that you are wanting to do try this...
Border teamBorder = BorderFactory.createLineBorder(Color.RED, 1);  // "1" is the thickness of the border
jLabel_visitorsScore.setBorder(BorderFactory.createTitledBorder(teamBorder, arguments[1], TitledBorder.DEFAULT_JUSTIFICATION, TitledBorder.DEFAULT_POSITION, new Font(Font.DIALOG, Font.BOLD, 36))); // Where "36" is the point size of the font that you want to use

Open in new window

Note: also you can change that "Font.DIALOG" constant to one of the other logical font constants or to a string that is an actual font name, eg. "Arial", etc
0
 
LVL 86

Expert Comment

by:CEHJ
ID: 39751128
It is only because Font.BOLD is an "int" constant and the thickness of the border is specified as an "int", that allows this code still to compile.
That's why type-safe arguments are always preferable. Fortunately Java has enum since 1.5
0
 

Author Closing Comment

by:sargent240
ID: 39753018
Thanks all for your information.  It is all helpful to use who are learning the language.
0
 

Author Comment

by:sargent240
ID: 39753021
mccarl - I used your code as a foundation, made a few changes and it worked like a champ doing what I needed to do.  I made a few adjustments and all is well.  Happy New Year!
0
 
LVL 36

Expert Comment

by:mccarl
ID: 39753034
Your welcome! :)     (And a Happy New Year to you too!)
0
 
LVL 26

Expert Comment

by:ksivananth
ID: 39753187
did you try my code?
0
 

Author Comment

by:sargent240
ID: 39754059
ksivananth - Yes I did try your code and I got an error:

cannot find symbol method setFont(Font)

I appreciate your input.
0
 
LVL 36

Expert Comment

by:mccarl
ID: 39755461
I believe .setTitleFont() would be the method you would need to do it that way.
0

Featured Post

On Demand Webinar: Networking for the Cloud Era

Did you know SD-WANs can improve network connectivity? Check out this webinar to learn how an SD-WAN simplified, one-click tool can help you migrate and manage data in the cloud.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

For beginner Java programmers or at least those new to the Eclipse IDE, the following tutorial will show some (four) ways in which you can import your Java projects to your Eclipse workbench. Introduction While learning Java can be done with…
By the end of 1980s, object oriented programming using languages like C++, Simula69 and ObjectPascal gained momentum. It looked like programmers finally found the perfect language. C++ successfully combined the object oriented principles of Simula w…
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:
The viewer will learn how to implement Singleton Design Pattern in Java.
Suggested Courses

670 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question