Skip to Main Content

APEX

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

APEX 20.2 Interactive Grid Text Field with Autocomplete issue

tvbishanOct 20 2020

This is how Text Field with Autocomplete shown in Apex 20.1
Apex 20.1But in Apex 20.2, it shows as below. (text input has a line and split into two rows)
Apex 20.2How can I avoid this and use Text Field with Autocomplete as in Apex 20.1

This post has been answered by Anthony Rayner-Oracle on Nov 6 2020
Jump to Answer

Comments

843804
Extend your own JTextArea :)
843804
import java.awt.*;
import java.awt.geom.*;
import java.awt.image.*;
import java.io.*;
import java.net.*;
import javax.imageio.*;
import javax.swing.*;
import javax.swing.border.*;

public class CentredBackgroundBorder implements Border {
    private final BufferedImage image;

    public CentredBackgroundBorder(BufferedImage image) {
        this.image = image;
    }

    public void paintBorder(Component c, Graphics g, int x, int y, int width, int height) {
        x += (width-image.getWidth())/2;
        y += (height-image.getHeight())/2;
        ((Graphics2D) g).drawRenderedImage(image, AffineTransform.getTranslateInstance(x,y));
    }

    public Insets getBorderInsets(Component c) {
        return new Insets(0,0,0,0);
    }

    public boolean isBorderOpaque() {
        return true;
    }

    //demo
    public static void main(String[] args) throws IOException {
        JFrame.setDefaultLookAndFeelDecorated(true);
        JTextArea area = new JTextArea();
        area.setForeground(Color.GREEN);
        area.setOpaque(false);
        area.read(new FileReader("CentredBackgroundBorder.java"), null);
        String url = "http://today.java.net/jag/bio/JagHeadshot.jpg";
        JScrollPane sp = new JScrollPane(area);
        sp.getViewport().setOpaque(false);
        sp.setViewportBorder(new CentredBackgroundBorder(ImageIO.read(new URL(url))));

        JFrame f = new JFrame("BackgroundBorderExample");
        f.getContentPane().add(sp);
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.setSize(600,400);
        f.setLocationRelativeTo(null);
        f.setVisible(true);
    }
}
843804
Thank you for your help !!^^
1 - 3

Post Details

Added on Oct 20 2020
7 comments
1,338 views