|
Hi Pete O'Hanlon.
Thank you. Yes, I want drag a picture based on the mouse movement. When I move the mouse I want that an image that I load fix in the position of mouse. Can you help me?
|
|
|
|
|
I already have helped you. I've given you the steps you need to follow. The code isn't that difficult. Why don't you try it? All you need is the mouse coordinates, everything else is just basic maths.
This space for rent
|
|
|
|
|
I was wondering if there is a free dwg nuget package, for c# dev?
I want to be able to view a dwg, zoom in and view different parts of the file.
Any help will be appreciated.
modified 8-Mar-17 17:24pm.
|
|
|
|
|
dwg?
"It is easy to decipher extraterrestrial signals after deciphering Javascript and VB6 themselves.", ISanti[ ^]
|
|
|
|
|
|
Thanks. Didn't knew. I was only aware of DXF.
"It is easy to decipher extraterrestrial signals after deciphering Javascript and VB6 themselves.", ISanti[ ^]
|
|
|
|
|
Nope[^]. With a quick search, you could have found this out for yourself.
This space for rent
|
|
|
|
|
I have a kinect application and I want change the cursor for an image, but without affect the features like click, drag etc that works now.
I tried use this code, but its not the goal, because, the image appears, but I can't click, drag etc. Somebody have any ideas?
Or in the last case is it possible to hide the cursor and show just one image? The cursor will be there but is hidden or the image are above cursor. is it possible?
public void showImageInsteadCursor(){
form frm = new form();
picturebox pb = new picturebox() { image = image.fromfile(@"c:\users\user\desktop\img.bmp") };
frm.cursor = new cursor(((bitmap)pb.image).gethicon());
frm.windowstate = formwindowstate.maximized;
frm.transparencykey = frm.backcolor = system.drawing.color.turquoise;
frm.formborderstyle = formborderstyle.none;
frm.showdialog();
}
|
|
|
|
|
Why are you opening a new (transparent) form?
Just set the cursor on the current form;
this.Cursor = new Cursor(((bitmap)pb.image).gethicon());
Code below should not compile;
frm.transparencykey = frm.backcolor = system.drawing.color.turquoise;
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Hi Eddy Vluggen.
Thanks for the answer. I already did this, but I want that the image appears in desktop understand? Like the cursor. And if I remove that line just appear a window with the image. Can you help me?
|
|
|
|
|
Yup, easy enough. There's an article here[^]. More examples if you search for "SetSystemCursor".
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Hi Eddy Vluggen.
Thank you.
My project is in C# not in VB.
I don't want change cursor, I want add image to the cursor understand?
|
|
|
|
|
Member 13014278 wrote: My project is in C# not in VB. You could either search for specific examples in C# doing the same, or learn to read VB.
Member 13014278 wrote: I don't want change cursor, I want add image to the cursor understand? Add your image to a (small) transparent form, get the coordinates of the systems cursor, and change the location of your form to somewhere near those locations.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Hi Eddy Vluggen.
Thanks.
Yes, but the code that I showed didn't do what you said? If not, can you give me one example to help me for I test?
|
|
|
|
|
Member 13014278 wrote: Yes, but the code that I showed didn't do what you said? Correct. The form, albeit transparent, will block some events.
Member 13014278 wrote: If not, can you give me one example to help me for I test? No; I can give you an idea on how to achieve what you want, and some code-snippets to explain the idea, but you'll have to do the coding.
Best I can come up with in this scenario is to follow the mouse-cursor with a form where the picture is residing in.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Hi Eddy Vluggen. Thanks for the answer.
So, if my code do what you said, what miss in my code? I didn't understood. Can you help me?
|
|
|
|
|
Member 13014278 wrote: So, if my code do what you said, what miss in my code? The approach is wrong. Overlaying the desktop with a transparent form means you'll eat some of the events.
Member 13014278 wrote: I didn't understood. Can you help me? I tried, but it didn't work.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Hi Eddy.
Thanks.
Yes I understood what you said. And have the topics that you said:
1. Add image to a small transparent form
2. Get the coordinates of the systems cursor
3. Change the location of your form to somewhere near those locations
Right?
But I think that the 1. I already did, you can check?
Can you help me in next steps?
|
|
|
|
|
Member 13014278 wrote: But I think that the 1. I already did, you can check? It should not be maximized.
Member 13014278 wrote: 2. Get the coordinates of the systems cursor Something like pinvoke.net: getcursorpos (user32)[^].
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Hi Eddy.
Thanks. It was very useful the first tip.
The second I think that I already have. Check please. Is not the same thing?
<pre> [DllImport("user32.dll")]
public static extern bool GetCursorPos(out POINT lpPoint);
public static Point GetCursorPosition()
{
POINT lpPoint;
GetCursorPos(out lpPoint);
return lpPoint;
}
|
|
|
|
|
Yes, that's the one; you'll need this[^] - if you read that, you'll notice that the call could fail. To use my computer as an example, the "current desktop" is not always the normal windows desktop.
Next thing to notice is that the call does not return a C# location on a Screen object, but screen-coordinates. You may need to convert or translate that to get a C#-point. Once you have that, you can set the top and left-properties of your small form to that location.
The form would also need to be the "topmost" form, otherwise it will sometimes dissapear behind other windows. The problem with "topmost" is that there might be multiple applications wanting to claim the same thing.
That would be one possible solution. Another might be to replace the entire cursor. It should be possible to get the current settings of the user and find out the current cursor, to load that as an image, add your image to that, and replace the entire cursor with the newly merged image. That would create conflicts in applications where the cursor changes (like to the hourglass, or on mouseovers) though.
I'd consider both a 'hackish' solution, and I doubt MS supports such a scenario. You may want to use the MSDN forums to check if there is a supported way to achieve the same (which will add complexity, ofc).
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Hi Eddy. Thanks.
The link that you sent is in C++. I want in C#. The idea that replace entire cursor in system I don't like. I want add an image that moves the cursor just this. Do you know how I can do this?
|
|
|
|
|
What you want to achieve is not available as a pure C# solution. The WinAPI documentation is for C++ developers, or people who interop from another language as C#.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
|
I am trying to understand how to write a multiplatform library with either .NET core / standart.
(remark before I was using PCL but it's fidly with target framework, I was hoping it wil be easier with .NET Core/standart)
here is my simple library class
namespace ClassLibrary1
{
public class Class1
{
public static void DoFoo()
{
Console.WriteLine("hello");
}
}
}
Now I try to use it in a console app (targeting .NET 4.6.2)
In .NET Standard library, it compiles but I get the following runtime error:
System.IO.FileNotFoundException: 'Could not load file or assembly 'System.Console, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.'
In a .NET Core library, I got compiler error:
3>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\Sdks\Microsoft.NET.Sdk\build\Microsoft.NET.Sdk.Common.targets(73,5): error : Project 'H:\Temp\ConsoleApp3\ClassLibrary2\ClassLibrary2.csproj' targets '.NETCoreApp,Version=v1.1'. It cannot be referenced by a project that targets '.NETFramework,Version=v4.6.2'.
I am at loss how to go any further... :'(
Can someone enlightnen me on what's going on
(didn't find how to add System.Console reference DLL to my .NET standard library)
[EDIT] Solved it!
I had to use Nuget to add System.Console to my console app and then it worked!
Interesting...
I have to investigate how this ll work and test this .NET Standard library on Android!
|
|
|
|