Anzeigeprobleme bei transparenten hintergrund

ClinIC

Mitglied
Hallo, wenn ich bei einer Form ein transparenten Hintergrund einfügen möchte bekomme ich andauernd komische Anzeigefehler, dass halt wenn ich zb. den Arbeitsplatz öffne und das Programm, dann zeichnet der transparente Hintergrund den Arbeitsplatz darein weiß nicht wie ichs anners erklären soll. Habe noch ne Bild:
Unbenannt.JPG


Danke für Eure Hilfe
CliniC
 
Hm,

vielleicht verstehe ich Dich falsch, aber ist transparent nicht genau das was Du sagst?
Es ist durchscheinend, also scheint in dem Fall der Arbeitsplatz durch.


Sorry, wenn ich Blödsinn reden sollte - sind vielleicht die Grippostad dran schuld :rolleyes:

LG Rike
 
Hallo,

Arbeitest du mit Regions? Wenn nein (hoff ich mal nicht) wahrscheinlich mit AllowTransparentBackground (oder so) --> das funktioniert nicht. Wenn ja, solltest du mal Beispielcode posten, da das sonst eigentlich recht gut funktioniert.

Gruss Alexander
 
Hallo Alexander, also wenn ich ehrlich bin hab ich das nur in der Eigenschaft BackgroundImage eingestellt.. Kenne mich leider nicht gut mit Forms aus, wollte das halt mal versuchen. Wie kann ich das Problem denn beheben? Wäre nett wenn du mir erklären würdest bzw. auf ne Link verweist habe nämlich nix gefunden.

Danke
Lars
 
Hey danke erstmal. Aber irgendwie geht das immer noch nicht.. Habe das so übernommen doch irgendwie es nicht:

hier mal mein Code, hoffe ihr könnt mir weiterhelfen

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

namespace WindowsApplication2
{
	/// <summary>
	/// Summary description for Form1.
	/// </summary>
	public class Form1 : System.Windows.Forms.Form
	{
		private bool blnMoving = false;
		private int MouseDownX;
		private int MouseDownY;

		/// <summary>
		/// Required designer variable.
		/// </summary>
		private System.ComponentModel.Container components = null;

		public Form1()
		{
			//
			// Required for Windows Form Designer support
			//
			InitializeComponent();

			//
			// TODO: Add any constructor code after InitializeComponent call
			//
		}

		/// <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()
		{
			System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(Form1));
			// 
			// Form1
			// 
			this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
			this.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("$this.BackgroundImage")));
			this.ClientSize = new System.Drawing.Size(416, 408);
			this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
			this.Name = "Form1";
			this.Text = "Form1";
			this.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Form1_MouseDown);
			this.Load += new System.EventHandler(this.Form1_Load);
			this.MouseUp += new System.Windows.Forms.MouseEventHandler(this.Form1_MouseUp);
			this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Form1_MouseMove);

		}
		#endregion

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

		private void button1_Click(object sender, System.EventArgs e)
		{
			Application.Exit();
		}

		public void Form1_MouseMove(object sender, MouseEventArgs e)
		{
			if( blnMoving )
			{
				Point temp = new Point(0,0);

				temp.X = this.Location.X + (e.X - MouseDownX);
				temp.Y = this.Location.Y + (e.Y - MouseDownY);
				this.Location = temp;
			}
		}

		private void Form1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
		{
			if (e.Button == MouseButtons.Left)
			{
				blnMoving = true;
				MouseDownX = e.X;
				MouseDownY = e.Y;
			}
		}

		private void Form1_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e)
		{
			if (e.Button == MouseButtons.Left)
				blnMoving = false;
		}

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

Tnx
Lars
 
so hab das Problem gefunden, es liegt am 32bit Farbmodus wenn man den in Windows auf 16bit stellt dann gehts, kann man das auch fixen?
 
Zurück