那里,
我是Qt的新手,我试图创建一个可拖动的Frameless窗口.问题是,如果我移动窗口......有数千个(对不起,不知道如何用英语描述)直到我停止.有没有办法解决这个问题,还是我想错了路?
MyWindow.h
#include <QMainWindow>
#include <QLabel>
#include <QPushButton>
#include <QMouseEvent>
class MyWindow : public QMainWindow {
Q_OBJECT
private:
QLabel *label_title,*label_quit;
QPushButton *bn_exit;
QPixmap *pixmap;
QPoint m_dragPosition;
public:
MyWindow(QMainWindow *parent = 0, Qt::WindowFlags flags = 0);
protected:
void paintEvent(QPaintEvent *event);
void mouseMoveEvent(QMouseEvent *event);
void mousePressEvent(QMouseEvent *event);
};
Run Code Online (Sandbox Code Playgroud)
MyWindow.cpp
#include "MyWindow.h"
#include <QApplication>
#include <QPainter>
#include <QLabel>
MyWindow::MyWindow(QMainWindow *parent, Qt::WindowFlags flags) : QMainWindow(parent,flags) {
resize(1024,576);
setWindowTitle("Versuch1");
//Titel
label_title = new QLabel("irgendwas",this);
label_title->setGeometry(10,10,500,40);
label_title->setStyleSheet("font-family: Arial; letter-spacing: 4px;font-weight:bold; color : white;font-size: 30px");
//Exit-Button …Run Code Online (Sandbox Code Playgroud) 我知道我可以轻松地允许用户在OpenLayers中选择多个功能/几何,但我希望让用户能够轻松地同时拖动/移动所有选定的功能.
使用ModifyFeature控件,它一次只能移动一个功能...有没有办法轻松扩展此控件(或任何工作)以移动该图层上的所有选定功能?
可能重复:
C# - 使无边框形式可移动?
我通过设置在C#中创建了一个没有边框的表单
this.FormBorderStyle = FormBorderStyle.None;
现在,问题是如何用鼠标拖动它?
我有一个矢量图层,用于在我的地图上显示标记作为特征,但现在我不知道,我做什么,它们是可以拖拽或可点击的.我能做些什么来获得两者?
/*** Init Drag Marker
*/
var dragFeature = new OpenLayers.Control.DragFeature(layerTrackMarker,
{'onComplete': updateMarker}
);
map.addControl(dragFeature);
dragFeature.activate();
/*** Init Click Marker
*/
var clickFeature = new OpenLayers.Control.SelectFeature(layerTrackMarker,
{}
);
map.addControl(clickFeature);
layerTrackMarker.events.on({
"featureselected": function(e) {
var markerId = e.feature.geometry.id;
removeMarker(markerId);
/* ToDo: show context menu */
},
"featureunselected": function(e) {
/* ToDo: hide context menu */
}
});
clickFeature.activate();
Run Code Online (Sandbox Code Playgroud) 我希望能够在触摸拖动时移动PopupWindow.我不希望UI在触摸发布时更新.我希望PopupWindow跟随我的触摸.
这就是我正在做的事情:
mView = mLayoutInflater.inflate(R.layout.popup,
null);
mPopupWindow = new PopupWindow(mView,
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, false);
mPopupWindow.showAtLocation(parentView, Gravity.CENTER, -5, 30);
mView.setOnTouchListener(new OnTouchListener() {
private int dx = 0;
private int dy = 0;
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
switch (motionEvent.getAction()) {
case MotionEvent.ACTION_DOWN:
dx = (int) motionEvent.getX();
dy = (int) motionEvent.getY();
break;
case MotionEvent.ACTION_MOVE:
int x = (int) motionEvent.getX();
int y = (int) motionEvent.getY();
int left = (x - dx);
int top = (y - dy);
Log.d("test", "x: " + …Run Code Online (Sandbox Code Playgroud) 我正在尝试做一个简单的拖动脚本.这个想法是在鼠标停止时保存位置,在鼠标移动时更新视图,在鼠标移动时停止.问题,mouseup事件无法正常工作.
看代码:
var target = $('a')
var pos = 0;
var dragging = false;
$(document).mousedown(function(e) { pos=e.pageX; dragging = true })
$(document).mouseup(function() { dragging = false })
$(document).mousemove(function(e) {
if(dragging){
target.css('left', e.pageX-pos);
}
}) ?
Run Code Online (Sandbox Code Playgroud)
为什么mouseup与"a"标签一起使用:http: //jsfiddle.net/leyou/c3TrG/1/
为什么mouseup无法使用"img"标记:http: //jsfiddle.net/leyou/eNwzv/
只是尝试水平拖动它们.
ie9,ff和chrome也有同样的问题.Windows 7的
我有一个图像闪烁与大图像的问题.在我的body我有5张图片:
<img id="img1" src="img1.png" width="250">
<img id="img2" src="img2.png" width="250">
<img id="img3" src="img3.png" width="250">
<img id="img4" src="img4.png" width="250">
<img id="img5" src="img5.png" width="250">
Run Code Online (Sandbox Code Playgroud)
还有一个我用jQuery UI拖动其中一个,所有这些都在改变他们src和dragend:
function dragStart() {
$('#img2').attr('src','newimg2.png');
$('#img3').attr('src','newimg3.png');
$('#img4').attr('src','newimg4.png');
$('#img5').attr('src','newimg5.png'); }
Run Code Online (Sandbox Code Playgroud)
太好了.但是我需要使用大图像(2000 x 2000px),因为所有图像都可以被点击,然后它们将动画到视口的全尺寸,它们不会像素化.
$this.animate(
{ width: 1800, top: -650, left: -250 },
{
duration: 4000,
easing: 'easeOutElastic'
})
Run Code Online (Sandbox Code Playgroud)
我认为,由于每张图像的大小,它们都在闪烁.如果所有人同时src改变,你们是否有人知道如何防止这种图像闪烁?
谢谢你的努力
谢谢stackoverflow我解决了很多我的javascript问题,但现在我停在了没有希望的地步.很难描述,有清晰的视频显示拖放跨域iframe的问题.
http://www.youtube.com/watch?v=v65mO27h75E
还有指向iframes示例和iframes源的链接:
是Chrome错误,还是"同源策略"下的安全性?这很奇怪,因为d&d在两个窗口之间工作非常好,并且想要从父窗口到iframe完全无法工作.
谢谢你的建议.彼得·
编辑:Chrome/Chromium安全缓解可能过于宽泛.问题251718:https://code.google.com/p/chromium/issues/detail? id = 251718
我已成功设置我的网格用鼠标拖动
<Grid x:Name="SourceGrid13"
CanDrag="True"
DragStarting="SourceGrid_DragStarting"
Margin="0,20,0,0">
Run Code Online (Sandbox Code Playgroud)
但是,通过触摸,这在Windows Phone(Windows 10)上无法拖动.我该如何设置?
另外我假设一旦我得到网格拖动,下拉序列将与鼠标相同?这是我的代码:
<ListView HorizontalAlignment="Center" AllowDrop="True"
Drop="Image_Drop"
DragEnter="TargetImage_DragEnter"
DragLeave="TargetImage_DragLeave"
CanDragItems="True"
IsSwipeEnabled="True"
MinHeight="124"
Grid.Row="4"
Grid.Column="1">
<Image Height="224"/>
</ListView>
Run Code Online (Sandbox Code Playgroud)
在平板电脑上,它很难,但它会触摸拖动.我是否需要在手机上启用它?
我现在认为触摸拖动可能会被禁用,直到Windows Phone上的Windows 10上的未来更新或实际发布.
更新基于答案:
我将listView的CanDragItems和IsSwipeEnabled设置为True,但这并没有改变任何东西.我用一些奇怪的结果应用了操作矩形.在手机上,我可以拖动矩形,但当我将它带入我的ListViews时,它就会消失.这些图片显示:
全矩形:
将其向下拖出Framework元素 - 它被拖动到listView后面.
在桌面上,矩形被拖动到listView前面,但在从原始框架元素拖出后,它是不可分割的.
我是新的反应原生和过度使用www中的所有选项.这就是为什么我有点困惑如何以最好的方式完成这项任务.
我想做一些与此相似的东西,但是反应原生.一个方形,我可以拖动整个视图+通过拖动它的角来调整大小.我已经看过指数IDE和给定的ThreeView-Component,但我认为three.js对于这项任务来说有点过头了,对吧?
[1]: http://codepen.io/abruzzi/pen/EpqaH
Run Code Online (Sandbox Code Playgroud) drag ×10
jquery ×3
c# ×2
javascript ×2
openlayers ×2
android ×1
click ×1
cross-domain ×1
geometry ×1
html ×1
iframe ×1
marker ×1
mouse ×1
mouseup ×1
move ×1
popupwindow ×1
qt ×1
react-native ×1
resize ×1
shape ×1
src ×1
uwp ×1
window ×1
windows-10 ×1
winforms ×1