Can i use showInputDialog with my custom buttons or can i rename \"OK\" and \"Cancel\" button on showInputDialog.
There are a bunch of variants of each JOptionPane method. And choosing the one will usually give you access to the desired level of feature. In your case, you're looking for
public static Object showInputDialog(Component parentComponent,
Object message,
String title,
int messageType,
Icon icon,
Object[] selectionValues,
Object initialSelectionValue)
See its javadoc here: JOptionPane#showInputDialog. notice you won't change here the buttons colors (as they're look-and-feel dependant) but rather change their text (which is generally speaking enough, as you can also here set the icon displayed on dialog left side).