Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Form.Opacity

Postades av 2004-09-03 14:53:37 - Jenny Månsson, i forum vb.net, Tråden har 13 Kommentarer och lästs av 804 personer

Med Opacity kan man göra ett fönster genomskinligt inklusive alla kontroller.

Kan man på nåt vis göra ett undantag för en enda kontroll? Jag har ett fönster som delvis ska vara genomskinligt förutom en enda knapp i ett visst läge. Kan inte hitta något sätt att överskrida detta. Är det möjligt? Någon som vet?


Svara

Sv: Form.Opacity

Postades av 2004-09-06 12:51:13 - Mikael Sand

och det är inte bara att sätta Control.Opacity till det värdet man vill ha eller renderas allt enligt Form.Opacity??


Svara

Sv: Form.Opacity

Postades av 2004-09-06 13:52:46 - Jenny Månsson

Ehhh, givetvis har jag väl letat efter en sådan egenskap...........jag är ingen nybörjare inom programmering precis...inget illa menat att racka ner på ditt inlägg dock...

Finns ingen Opacity på control i alla fall inte i C#.


Svara

Sv: Form.Opacity

Postades av 2004-09-06 14:19:18 - Roger Alsing

opacity stöds bara av toplevel fönster i win2000 och senare.
dvs du kan sätta det på hela formuläret (med det resultat du sett)

//Roger


Svara

Sv: Form.Opacity

Postades av 2004-09-06 14:48:21 - Jenny Månsson

Jo tack! Det är det jag också har kommit fram till precis som jag har skrivit i mitt första inlägg. Det jag undrar över är om någon vet om det är möjligt att göra ett undantag på en enda kontroll.

Tänkte att det kanske är någon som känner till något tricks att komma runt detta...


Svara

Sv: Form.Opacity

Postades av 2004-09-06 17:07:19 - Oskar Johansson

En idé (ful som stryk) är att du ser till att du skapar ett kantlöst fönster som du sedan stoppar din kontroll som inte ska vara genomskinlig i. Det ser du sedan till att hela tiden synka positionen på. Det är det enda jag kan komma på... :/


Svara

Sv: Form.Opacity

Postades av 2004-09-07 08:10:41 - Jenny Månsson

Yes Onkelborg, den är ful men det är en idé.

Det är ingen jätteviktigt funktion så jag tar nog ett beslut om att funktionen inte ska göras om det inte finns någon bättre kodning. Håller dock tråden öppen ett tag till.


Svara

Sv: Form.Opacity

Postades av 2004-09-07 11:12:04 - Roger Alsing

det _går_ att sätta opacity per pixel på ett formulär om du interoppar mot win32 layeredwindows apierna

det finns två olika sätt att använda layeredwindows ,
den första är den som finns inbyggd i .net , dvs opacity på ett helt top level fönster.
det andra är att med en bitmap som representerar en alphamask göra ett fönster transparant/semitransparant på pixelnivå (tror det finns exempel på det på codeproject.com

//Roger


Svara

Sv: Form.Opacity

Postades av 2004-09-09 16:11:58 - Patrik Löwendahl

ledtråd till dig jenny:

http://groups.google.se/groups?hl=sv&lr=&ie=UTF-8&threadm=u17iS2RbEHA.1152%40TK2MSFTNGP09.phx.gbl&rnum=3&prev=/groups%3Fq%3Dirregular%2Bshaped%2Bforms%2Bgroup:microsoft.public.dotnet.*%26hl%3Dsv%26lr%3D%26ie%3DUTF-8%26selm%3Du17iS2RbEHA.1152%2540TK2MSFTNGP09.phx.gbl%26rnum%3D3

Irregular forms *S*


Svara

Sv: Form.Opacity

Postades av 2004-09-10 08:03:31 - Johan Bovin

Ett tufft exempel som jag bara var tvungen att göra:

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;

namespace IrregForm
{
	/// <summary>
	/// Summary description for Form1.
	/// </summary>
	public class Form1 : System.Windows.Forms.Form
	{
		private System.Windows.Forms.Label label1;
		private System.Windows.Forms.Button button1;
		private System.Windows.Forms.Button button2;
		/// <summary>
		/// Required designer variable.
		/// </summary>
		private System.ComponentModel.Container components = null;

		public Form1()
		{
			InitializeComponent();
		}

		/// <summary>
		/// Clean up any resources being used.
		/// </summary>
		protected override void Dispose( bool disposing )
		{
			if( disposing )
			{
				if (components != null) 
				{
					components.Dispose();
				}
			}
			base.Dispose( disposing );
		}

		#region Windows Form Designer generated code
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{
			this.label1 = new System.Windows.Forms.Label();
			this.button1 = new System.Windows.Forms.Button();
			this.button2 = new System.Windows.Forms.Button();
			this.SuspendLayout();
			// 
			// label1
			// 
			this.label1.Location = new System.Drawing.Point(96, 40);
			this.label1.Name = "label1";
			this.label1.TabIndex = 0;
			this.label1.Text = "label1";
			// 
			// button1
			// 
			this.button1.Location = new System.Drawing.Point(360, 192);
			this.button1.Name = "button1";
			this.button1.TabIndex = 1;
			this.button1.Text = "button1";
			// 
			// button2
			// 
			this.button2.Location = new System.Drawing.Point(128, 144);
			this.button2.Name = "button2";
			this.button2.TabIndex = 2;
			this.button2.Text = "button2";
			this.button2.Click += new System.EventHandler(this.button2_Click);
			// 
			// Form1
			// 
			this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
			this.ClientSize = new System.Drawing.Size(456, 350);
			this.Controls.Add(this.button2);
			this.Controls.Add(this.button1);
			this.Controls.Add(this.label1);
			this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
			this.Name = "Form1";
			this.Text = "Form1";
			this.Load += new System.EventHandler(this.Form1_Load);
			this.ResumeLayout(false);

		}
		#endregion

		/// <summary>
		/// The main entry point for the application.
		/// </summary>
		[STAThread]
		static void Main() 
		{
			Application.Run(new Form1());
		}

		private void Form1_Load(object sender, System.EventArgs e)
		{
			Invisible();
			
		}

		private void button2_Click(object sender, System.EventArgs e)
		{
			Visible();

		}
		private void Invisible()
		{
			button2.BackColor=this.BackColor;
			this.BackColor=Color.Orange;
			this.TransparencyKey=Color.Orange;
			label1.Visible=false;
			button1.Visible=false;
		}
		private void Visible()
		{
			this.BackColor=button2.BackColor;
			this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.Sizable;
			label1.Visible=true;
			button1.Visible=true;
		}
	}
}



Svara

Sv: Form.Opacity

Postades av 2004-09-10 14:21:19 - Roger Alsing

jag fick intrycket att det handlade om att göra saker semitransparenta , inte klippa bort delar av formuläret , eller?

//Roger


Svara

Sv: Form.Opacity

Postades av 2004-09-10 15:05:28 - Jenny Månsson

Alldeles riktigt, det jag vill åstadkomma är semitransperanta fönster inklusive kontroller på fönstret utomen enda kontroll. Ej klippa bort delar av fönstret.

Tyvärr har jag inte hunnit testa de senaste tipsen men ska testa så fort jag får tillfälle. Även om det är delar som klipps bort så kanske idén är användbar på annat sätt med lite redigering...

Jag såg att där var något tips om transperancy på pixel nivå men vet inte om det heller blir användbart då användarna kan ha olika xp themes där hela fönstret och kontroller är fadade så att säga. En mörk färg i ena änden av fönstret som fadar ut över hela fönstret och kontroller till att avslutas med en ljus färg i andra änden.

Återkommer när jag testat men kom gärna med fler idéer under tiden!


Svara

Sv: Form.Opacity

Postades av 2004-09-10 15:34:59 - Roger Alsing

kollade just codeproject exemplet http://www.codeproject.com/cs/media/perpxalpha_sharp.asp?df=100&forumid=3270&exp=0&select=844530&tid=266619#xx844530xx

och det är tydligen så att man kan inte ha kontroller på ett fönster med perpixel alphablend :P

så jag skulle nog säga att du får köra på onkelborgs hacklösning

skapa 2 fönster , ett med opacity och ett borderless med din knapp på.

synca sedan fönstrens förflyttning via lämpligt event/wndproc

//Roger


Svara

Sv: Form.Opacity

Postades av 2004-09-10 16:57:51 - Johan Bovin

Nä, det var jag som glömde bort ursprungsfrågan :(
Nåja, tur att det är fredag


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 722
27 958
271 751
356
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies