c#


Making a transparent/Click-throughable VB.net form clickable with a toggle


So I was working on a transparent add-on VB.net program that will be clickable only if you click shift. E.g. It will just stay there but clicks will go through it unless I hold shift f.e
I saw this and tested the codes,
VB.net Click through form
However I tried to change some controls but none are able to give me a kind of "toggle". Any clue of what I can fix for it?
Answers in C# are welcome as well as I can program C# instead if it is not do-able in VB
Edit: Code I have been trying to use is this
Imports System.Runtime.InteropServices
Public Class Form1
Private InitialStyle As Integer
Dim PercentVisible As Decimal
Private Sub Form_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
InitialStyle = GetWindowLong(Me.Handle, -20)
PercentVisible = 0.8
SetWindowLong(Me.Handle, -20, InitialStyle Or &H80000 Or &H20)
SetLayeredWindowAttributes(Me.Handle, 0, 255 * PercentVisible, &H2)
Me.BackColor = Color.Red
Me.TopMost = True
End Sub
<DllImport("user32.dll", EntryPoint:="GetWindowLong")> Public Shared Function GetWindowLong(ByVal hWnd As IntPtr, ByVal nIndex As Integer) As Integer
End Function
<DllImport("user32.dll", EntryPoint:="SetWindowLong")> Public Shared Function SetWindowLong(ByVal hWnd As IntPtr, ByVal nIndex As Integer, ByVal dwNewLong As Integer) As Integer
End Function
<DllImport("user32.dll", EntryPoint:="SetLayeredWindowAttributes")> Public Shared Function SetLayeredWindowAttributes(ByVal hWnd As IntPtr, ByVal crKey As Integer, ByVal alpha As Byte, ByVal dwFlags As Integer) As Boolean
End Function
End Class
I found the color to make all the difference; afaik this is a legacy bug/feature we can make use of.
Here is a minimal example:
public Form1()
{
InitializeComponent();
BackColor = Color.FromArgb(123,234,34);
TransparencyKey = BackColor;
Text = "Click Me!";
KeyPreview = true;
}
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.Shift)
{
BackColor = Color.Fuchsia;
TransparencyKey = BackColor;
Text = "Click Through!";
}
}
private void Form1_KeyUp(object sender, KeyEventArgs e)
{
BackColor = Color.FromArgb(123,234,34);
TransparencyKey = BackColor;
Text = "Click Me!";
}

Related Links

How to use session in apicontroller in asp.net mvc 4
How to parse descendents of serialized xml file
Mage.exe doesn't produce compatibleFrameworks for 4.5
Auto genrate excel file at specific time of the day
C# Cannot serialize object because MainViewModel is not marked Serializable
How to balance reader and writer threads in .NET
Convert ListView to Line separated String Array and vice versa
Asp.net error The type 'typeName' exists in both
XElement exists and Value in XElement is not Null
I am trying to call Web api Post method (i.e.PostMedication)written by me from ajax call ,It gives me error “The resource cannot be found.”
Application can't find OWIN Startup class after rename
How to print multiple values in C# method?
C# Ending process on Form2 close
Event being called with wrong default parameter
photon rpc is not calling correctly(Photon RPC with character generating)
How to save the exported Excel file in client place?

Categories

HOME
airflow
excel-formula
model-view-controller
mobile
sql-server-2014
virtual-machine
ldap
abc
ibm
arcgis
mifare
esxi
sugarcrm
foreach
autocad
markdown
subprocess
jcodemodel
aws-sdk-cpp
ldap-query
tmux
react-select
responsive
web-worker
dompdf
k-means
google-calendar-api3
geography
hapijs
novacode-docx
vala
hololens
screen-scraping
ppp
aws-certificate-manager
oracle10g
datanucleus
formtastic
angular2-changedetection
schedule
textview
akamai
visual-studio-debugging
qt-designer
ports
lighting
kepserverex
matrix-multiplication
area
idea-plugin
pyexcel
jquery-ui-slider
directadmin
quartz
libzip
cakephp-3.2
html-entities
taleo
encoder
dotnet-cli
ajv
sp
liferay-ide
grib
overhead
multi-select
robotc
qudpsocket
dimensionality-reduction
ldd
netlink
queuing
system-integration
aws-kms
pebble-js
hana-sql-script
askbot
matlab-engine
database-project
lytro
jain-sip
traminer
winforms-interop
clearquest
web-standards
valdr-bean-validation
bungeecord
strcpy
nexusdb
dockerpy
static-files
crtdbg.h
caption
zoneminder
parsefloat
dotcmis
amzi-prolog
starling-framework
lastinsertid
grunt-contrib-imagemin
playing-cards
proj4
cocotron
urlfetch
volatility
openafs
derived-class
functional-specifications
xcdatamodel
uccapi
authkit
html-help-workshop
qlibrary
high-load

Resources

Database Users
RDBMS discuss
Database Dev&Adm
javascript
java
csharp
php
android
javascript
java
csharp
php
python
android
jquery
ruby
ios
html
Mobile App
Mobile App
Mobile App