我正在制作一个用Java编辑图像的程序.我想知道是否可以将图像从用户桌面拖到JPanel图像上,然后将拖动的图像设置为背景JPanel.这可能在Java中吗?如果是这样,我该怎么做?
寻找一些指导,仍然是一个代码学习者,并使用HTML5 DnD /文件Api进行了一些努力......玩了一些演示试图了解它们是如何工作的,我有一点点问题.
大多数似乎使用内联css/js方法我试图在单独的文件中使用它们但似乎无法正确.
有人可以使用带有从桌面拖入的HTML画布为我做一个非常快速的演示,一个简单的画布元素,从桌面插入?似乎无法理解我的想法.
使用chrome,因此无需担心跨浏览器支持.
非常感谢aldo.
我正在尝试实现拖放图像上传.我在网上发现了一个相当简单的脚本,并且适合我的使用.在我的本地安装上,文件上传完全正常,但不在服务器上.在我的调试尝试中,$ _SERVER ['HTTP_X_FILENAME']甚至没有被php设置.
我尝试了以下操作: - 确保上传文件夹设置为755 - 更改php临时上载路径并增加允许的最大文件大小
没有任何类型的php或js错误发生.因为我有骰子(print_r($ _ SERVER)); 在php中,我使用chrome检查器获取$ _SERVER转储,它不包含HTTP_X_FILENAME索引.
我的php是:
<?php
$fn = (isset($_SERVER['HTTP_X_FILENAME']) ? $_SERVER['HTTP_X_FILENAME'] : false);
if ($fn) {
// AJAX call
file_put_contents(
'../usr/photos/' . $fn,
file_get_contents('php://input')
);
echo "$fn uploaded";
exit();
}
else {
// form submit
if(!$_FILES['fileselect']) die(print_r($_SERVER));
else $files = $_FILES['fileselect'];
foreach ($files['error'] as $id => $err) {
if ($err == UPLOAD_ERR_OK) {
$fn = $files['name'][$id];
move_uploaded_file(
$files['tmp_name'][$id],
'../usr/photos/' . $fn
);
echo "<p>File $fn uploaded.</p>";
}
}
}
Run Code Online (Sandbox Code Playgroud)
js如下:
//拖放照片上传(function(){ …
我有一个自定义列表视图,可以重新排列(拖放),显然可滚动.我需要添加一个带有listview的自定义标题,该标题应该与列表一起滚动.
我尝试使用自定义标题布局"listView.addHeaderView(header)".但是在列表重新安排期间标题变得混乱.所以我不想使用addHeaderView(...).
我还尝试在ScrollView中放置我的活动布局(LinearLayout)并按照此处的建议展开列表 - 如何将ListView放入ScrollView而不会折叠?.但是,滚动似乎很慢,ScrollView在列表项重新排列中产生问题.
那么有没有其他方法来实现这种效果?我更喜欢布局中的一些解决方案.
我在Android UI方面相当缺乏经验.提前致谢.
我希望能够从Outlook for Mac和Mail.app拖放和发送电子邮件到OS X应用程序.如果我从我的查找器中拖放并发送电子邮件(拖动文件),则会调用以下内容:
- (NSDragOperation)draggingEntered:(id <NSDraggingInfo>)sender
Run Code Online (Sandbox Code Playgroud)
但是,如果我从Outlook for Mac或Mail.app拖放,则不会调用该方法.我有点失落,我怎么能实现这一目标.有任何想法吗?
我目前正在设计一个内联文本编辑器.用户可以随时将图像拖放到编辑器中.
编辑器完全iFrame基于,在很大程度上依赖于嵌套div的样式和格式.现在,如果用户将图像拖放到内容的中间并将其放在那里,我希望将放置区域上方的内容打包成一个div,将图像放在其下面,并将放置区域下面的内容打包到另一个中div并放置在图像下方.
但是我不知道如何div根据坐标将其分成两部分(可以从jQuery drop handler获得).任何人都可以告诉我如何做到这一点?
我正在尝试在Firefox selenium IDE中使用dragAndDrop,但它无法正常工作.
我是硒的忠实粉丝但这个问题让我在最后一天疯狂.
我有一个dragAndDrop测试:
dragAndDrop
//div[contains(text(),"Lori F.")]/../../
0,160
Run Code Online (Sandbox Code Playgroud)
但它没有做拖拽.我已经看到它工作了几次但不确定为什么/为什么不现在.似乎有时工作,有时不工作.
单击IDE [find]按钮时,选择器本身可以正常工作.它突出了DIV我想要移动.所以这不是我在selenium中遇到的'通常'问题,实际上不能用正确的xpath选择对象.
它反对的HTML是:
<div class="fc-event-inner fc-event-skin" style="background-color: yellow;">
<div class="fc-event-head fc-event-skin"></div>
<div class="">
<div class="fc-event-title">
Lori F., Marshal H., Chris W., Kenna T.
</div>
</div>
<div class="fc-event-bg"></div>
</div>
Run Code Online (Sandbox Code Playgroud)
当该实际步骤试图运行时,浏览器实际上"闪烁"该对象,表明它能够通过路径OK选择它,但不会发生拖放.
我尝试了使用div的dragAndDropToObject,但这不起作用,因为DIV本身需要一个x,y坐标才能"降落"在正确的位置.
我发现的两个问题[这可能有助于其他人] - 并且被淘汰 - 是1)放大/缩小屏幕上的x,y坐标弄乱了,所以我停止这样做了2)使用元素检查器在Firefox中似乎也阻止它工作.所以我相信我已经将这两种作为潜在原因消除了.
能够测试拖放是非常重要的,因为许多应用程序现在采用各种ajax路由与这种类型的东西,所以能够测试它是关键!
我正在尝试创建一个类似于Paint的应用程序,我必须使用一些基本形状来创建更复杂的应用程序.
我会用Swing.我必须能够将对象从一个拖放JEditorPane到另一个.我想使用线条或圆形等基元.
我想知道的是 - 原语必须是组件才能拖放它们吗?如果是这样,我怎么能实现这个目标?
我很难解决我的问题,我真的很生气.
这里的想法是:我有两个ListView元素,当元素从第一个列表下降到第二个列表时,我需要打开一个对话框,但我需要删除元素中的信息和添加的元素以填充对话框.
问题是,我甚至无法获得正确的基本功能 - 这就是打开对话框.
我将从头到尾学习D&D技术,但我很快就需要一种方法来至少调用对话.
在编写和删除一些代码之后,我唯一剩下的就是以下内容:
private void lvListaRadnika_MouseDown(object sender, MouseButtonEventArgs e)
{
DragDrop.DoDragDrop(lvListaRadnika, presenter.Selected, DragDropEffects.None);
}
private void ListView_Drop(object sender, DragEventArgs e)
{
DodavanjeRezervacije dr = new DodavanjeRezervacije(new DodavanjeRezervacijePresenter(null,true));
dr.Show();
}
Run Code Online (Sandbox Code Playgroud)
在这一点上,我需要发生一些事情,之后我会看到添加所有必要的检查,向对话提供数据以及添加一个装饰.
如果有人能够尽可能多地解释拖拽的方式我会非常感激,但在这一点上我真的需要这个来点火.
drag-and-drop ×10
javascript ×3
draggable ×2
java ×2
listview ×2
swing ×2
ajax ×1
android ×1
awt ×1
components ×1
css ×1
firefox ×1
html ×1
html5 ×1
image ×1
jpanel ×1
jquery ×1
jquery-ui ×1
macos ×1
objective-c ×1
php ×1
scrollview ×1
selenium ×1
selenium-ide ×1
wpf ×1