Перетащите ImageIcons в массив ImageIcons, сохраните массив - PullRequest
0 голосов
/ 06 марта 2012

У меня есть массив простых белых ImageIcons, я перетаскиваю другие ImageIcons, чтобы создать историю, используя изображения.Если бы я хотел сохранить этот массив в базе данных, содержал бы массив ImageIcons, которые я поместил здесь, или он содержал бы оригинальные белые изображения ImageIcons.Изображения уже хранятся в базе данных через их путь.

Во-вторых, история никогда не превысит 10 изображений, поэтому лучше всего сохранить массив как одну запись в базе данных с storyID и каждымImageIcon вошел в свое поле.

Мне просто интересно, возможно ли то, что я пытаюсь сделать?Если это больше похоже на 2 вопроса, я удалю вторую половину по запросу.

Это код, используемый для перетаскивания из одной JPanel в другую.

   TransferHandler handler = new TransferHandler("icon") { 
    @Override public boolean canImport(TransferSupport support) 
    { return super.canImport(support) && support.getComponent().getParent() != ImageSelectPanel; } }; 

    MouseListener listener = new MouseAdapter(){ 
public void mousePressed(MouseEvent e){ 
JComponent c = (JComponent) e.getSource(); 
TransferHandler handler = c.getTransferHandler(); handler.exportAsDrag(c, e, TransferHandler.COPY); }

1 Ответ

0 голосов
/ 06 марта 2012

Ну, во-первых, лучший способ - сохранить указатели (или идентификаторы) на изображениях ваших значков при сохранении определенной последовательности таких изображений (истории).

Теперь о том, как на самом деле сохранить эти изображения, если они небольшие по размеру и количеству (что-то вроде не более 50 КБ каждое, не более 10-20 изображений), вы можете сохранить их все как BLOB-объекты.в вашей базе данных SQL, а затем сослаться на их идентификаторы в последующих историях, которые вы сохраните.

В противном случае, если они больше / больше, чем вы, лучше просто хранить их на диске, предпочтительно на отдельном диске, чемтот, где находится ваша база данных, и просто сохраните местоположение файла в базе данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...